Monday, June 26, 2006

Advanced Touring in Google Earth

Way back when I first started investigating using Google Earth as a near real-time visualization client for a GIS, I stumbled upon GE’s very small API. For those of you not familiar with the term, an API is the Application Programming Interface for an application. It provides programmatic control to certain parts of the program.

The API for Google Earth is very small and experimental. The GE engineers did not make it publicly known, and do not support it (I am somewhat inclined to believe that that might change in the future). One of the things you can do is tell GE where to move to and how fast to move there. You can also tell it to load a kml file. I used these two very simple commands to create long running tours. You can really make some neat things happen when you have GE slowly spiral in and then quickly change directions. Coupling this with the dynamic loading and unloading of data makes for some really powerful visual presentations. These original tours were hard coded, and were begging for some automation.

To create the tours, I had built a small application that would capture the Latitude, Longitude, Range, Tilt, and Azimuth of my current view in GE. I could then paste the data into my move function in the Tour applications.

Over time, I have changed things quite a bit so that I can persist the views in XML. I can also set the movement speed and movement hold time using the user interface to get better movement effects, and then jump back and forth between each view to see how the overall movement looks.

I have also written a little utility so that you can export the tour as point placemarks in Google Earth. These placemarks keep the name and description information (viewed in the information balloon), and lets the application act as a very quick way to set placemarks defining features found in GE.

Once a tour has been made, it can be saved as XML and used by others (assuming they have the same program). Eventually, I should be able to set it up so that people can quickly create their own fly-throughs and data loading sequences to demonstrate and or brief.

Some examples of how this can be used is as an education briefing (fly around to different geological areas of interest and load data to both highlight the area display text to describe it), operational briefings (Air Force pilots can be taken through a mission with data popping into view and described as required), engineering (this has already been used to tour through large scale engineering, construction, and logistics phases).

The uses are nearly endless.

Sunday, June 18, 2006

Google Earth -- World Wind -- ArcExplorer

I was recently at an Air Force conference where Google Earth, NASA’s World Wind, and ESRI’s ArcExplorer where prominently displayed. The serious interest that organizations like the Air Force are putting into these platforms has given me the opportunity to explore each of these platforms a bit more in depth.

I am still using Google Earth a great deal. I don’t believe that it can currently be challenged in its ease of use and clean navigation. My 5 year old loves to play with Google Earth, and has no trouble getting around the planet to points of interest. Their KML data representation and the use of Network links to serve data offer a very interesting and open way to create very unique customizations. For organizations with a very large amount of data, it is tough to beat their server products. This would work very well for the Air Force, which could leverage their own imagery holdings with other services and NGA to create their own world for Air Force specific applications and visualizations.

Things I wish they would do …. Currently, Google Earth offers a couple of methods to integrate existing GIS data into their system. You can load KML files, or you can purchase their Fusion product that compiles your data into a format that can be hosted by their Earth Server product into a Google Earth Enterprise Client (the Google Earth Browser with extended features). You have two options with the Earth Server. You can either have a hybrid system in which you load your vector data into the Earth Server and view it against the Keyhole server imagery. Or you can get Enterprise Pro, and host ALL of the data in your own world.

The whole Google Earth product line is really an enterprise system. It works best when everything is put together. I would like to see what I would term an organizational level system (as opposed to enterprise). An example would be using a Windows 2003 Server to host organizational data (to include imagery) that can be securely fused with the larger Keyhole imagery server. The great majority of organizations don’t want to just load their vector data in the big Linux based Google Earth Server in a hybrid mode, or be responsible for populating an entire world if they have localized imagery. They want to view their holdings fused against the Google data.

Secondly, if the Google Earth Client could expose some additional capabilities to developers in their API, the GIS community could rapidly start tacking on some pretty sophisticated geoprocessing capabilities.

I finally got around to downloading the World Wind source code, and started investigating their method for creating Plugins. I have seen World Wind improve quite a bit over the last year. And believe that it will continue to get better. Its unique power in this game is that it is open source and license free. They automatically provide the ability to completely customize the user interface and provide the ability for any developer to integrate any type of GIS data. I am currently working on an extension that uses Yahoos geocoding service to search for locations and zoom to them in WW.

I have only seen ESRI’s ArcExplorer in Beta. I will withhold my comments on it until it is released. It will probably work very well for anyone who already has an investment in an ESRI based system. I am looking forward to doing some development work with it before the end of the year.

Thursday, June 01, 2006

Download Shape2Earth Beta 2

UPDATE: Shape2Earth Beta 2 testing has closed. Shape2Earth Version 1.0 hase been released as shareware, and is available for download below.