This year’s Google Developer Day certainly still had a “Geo” emphasis, but the emphasis was decidedly on new Google Maps capabilities. A lot of attention was focused on the new Google Maps Mapplets technology. Mapplets are certainly a very important new capability to enhance geospatical context for most users using just a browser. But, many of the new capabilities would also be very valuable additions to the Google Earth client. Unfortunatley, Google will not normally pre-announce or discuss future products. So, we can only extrapolate what might be happening with Google Earth based on the implied new capabilities in Google Maps. However, there were a few hints in the presentations today.
The Mapplets technology in some ways mimics capabilities in Google Earth. The ability to allow users to turn on and off different sets of data (KML files in Google Earth’s case, or Maps mashups in the case of Mapplets). It is significant that KML is also supported by the new mapplets, so you can include KML files as Mapplets. But, I believe the same limitations to KML for Google Maps still applies (no large quantities of placemarks, no network links, etc.). The real power to the Mapplets is the ability to have a “gadget” window which lets you put some custom interface to your Mapplet to interact with the user. Also, by submitting your Mapplet to Google’s gallery you can get some better exposure for your content.
One new announcement was the release of documentation on KML 2.2 (beta). During the KML sessions, Bent Hagemark made a very limited demonstration of some capabilities that KML 2.2 will enable. For example, allowing you to control flying from placemark to placemark through HTML anchor links in your placemark descriptions. Also, allowing more control over the placemark of icons (centering on the bottom or top of the icon instead of the center). And finally a very brief demonstration of the new PhotoOverlay tag which will let you place photos in various orientations (at angles) or projections (such as cylindrical or spherical). These new features imply some possibly very useful applications, but the demo indicates these features are not ready for publication. We’ll have to wait for a new Google Earth release to see these new capabilities. Bent indicated we can still give input and suggestions by posting to the KML developer forum.
Google also announced a new capability in Google Maps which will enable (coming soon) Maps API developers to designate content which can have ads. So, if you search a place, you may see Hotel placemarks which if clicked can bring up an ad. If the user clicks on the ad the Maps API creator can get Adsense revenue from this. This is a way for API developers to monetize their mashup content without having to place the ads around the map. And, according to a Q&A session, you will still be able to run ads outside the map as well.
During the Geo Team “Fireside Chat”, there were many suggestions made to improve Google Earth/Maps. Here are a few interesing highlights:
- The issue of the Terms of Service for Google Earth being a barrier for commercial use of the application was raised. Google says that it is a data license issue and they are working to resolve it.
- Request for a way to protect KML files – e.g. encrypted KML files. Google took notes that this was a needed feature.
- Feature requests: Ability to handle sub-surface rendering, customization features such as custom toolbars, or re-organizing the layers (improving the UI), ability to text label surface features through KML, and a terrain data overlay capability.
- Google said that Google Maps will soon handle large KML files (lots of placemarks)
- Someone wondered whether the new KML search capability has resulted in “spam” problems. The response was that when that happens, that would mean they are starting to be truly successful with that feature.
- Someone suggested being able to tie games into the platforms. Google said the route for that in the short term is to provide better APIs to give more control
- Suggestion to improve ability to store imagery in the cache