[Cross posted from the Google Research blog]
Today, we launched Julia Map on Google Labs, a fractal renderer in HTML 5. Julia sets are fractals that were studied by the French mathematician Gaston Julia in the early 1920s. Fifty years later, Benoît Mandelbrot studied the set z2 − c and popularized it by generating the first computer visualisation. Generating these images requires heavy computation resources. Modern browsers have optimized JavaScript execution up to the point where it is now possible to render in a browser fractals like Julia sets almost instantly.
Julia Map uses the Google Maps API to zoom and pan into the fractals. The images are computed with HTML 5 canvas. Each image generally requires millions of floating point operations. Web workers spread the heavy calculations on all cores of the machine.
We hope you will enjoy exploring the different Julia sets, and share the URLs of the most artistic images you discovered. See what others have posted on Twitter under hashtag #juliamap. Click on the images below to dive in to infinity! (Supported on Chrome 8, Firefox 3.6, Safari 5 and above).
Posted by Daniel Wolf, Software Engineer
The Google Maps API has always been a great way to visualize data, but recently more and more advertising agencies are realizing the potential that the Maps API has for creative and engaging product campaigns.
Whether it’s automobiles, zombie trains, a blockbuster action movie, a board game, or even a bathroom cleaning product, there’s a map application for that product and it is changing the face of interactive advertising.
Domestos Flush TrackerDomestos is a brand of bleach sold in the UK, South Africa, and Poland. As an advertising campaign for this bathroom product, Domestos created a “Flush Tracker” that lets you track where your flush goes after it leaves your house and enters the local sewer system. The animated line on the map simulates the speed at which refuse moves the through sewer system.
A-Team - Drive the A-Team VanNothing is more iconic of the A-Team than Mr. T’s van. Using the Earth API, users can drive Mr. T’s van through 3D models of 15 international cities. This implementation was seamlessly embedded into a YouTube landing page for the movie, where users can watch special movie clips that are unlocked by completing certain driving stunts.
Virgin Trains - Don’t Go Zombie...From Virgin Trains, “The streets have been taken over by frustrated car-driving zombies who need to be saved. They have to get to the comfort of a Virgin Train and only you can help them with your special ticket machine. Follow the Map to get to your destination, saving zombies on the way.”
Alfa Romeo - Virtual Ownership Using the Street View API, users can plug in their address and virtually place an Alfa Romeo Giulietta in their driveway. The size, color, and positioning of the vehicle can also be manipulated, creating the perfect postcard to share on Facebook, Twitter, or email to a friend.
Monopoly City StreetsAlthough no longer live, this highly addictive, global Google Maps version of Monopoly will always be remembered as a great advertising campaign. Users could buy any street in the world and build hotels, houses, stadiums, castles and skyscrapers (to name a few). Fortunately, this truly unique idea was well documented and you can view demos of the game on YouTube: http://goo.gl/p0aEh and http://goo.gl/uXx4k Posted by Carlos Cuesta, Maps API Product Marketing Manager
The Maps API v3 aims to minimise the time it takes to load and display the initial map. Indeed the architectural changes needed to reduce this delay on mobile devices were the primary motivation for the break from the Maps API v2. The biggest factor affecting load time is the size of the JavaScript, as both the speed at which this is downloaded, and the speed it is parsed before execution by browsers is directly related to its size.
As the Maps API v3 continues to evolve we are keen to add more features, but as we do so we must be mindful of the impact they have on the size of the API. In response to this constraint we are kicking off 2011 by introducing a new concept to the Maps API v3, called a library.
A library is a set of Maps API features that are only loaded when explicitly requested by the application. By packaging features into a library, we can deliver them to applications that need those features without penalising the loading times of applications that do not. A library has its own child namespace under google.maps, and is a fully supported component of the Maps API.
The first library that we are launching is the geometry library. The geometry library provides a set of utility functions for performing distance, heading, and area calculations in a spherical geometry, such as on the surface of the Earth, and also provides functions for handling encoded polylines. To use these functions in your Maps API application you must request the geometry library when loading the API:
<script type="text/javascript" src="http://maps.google.com/maps/api/js?libraries=geometry&sensor=true_or_false"></script>
For more information on the geometry library, see the Maps API Documentation and Reference. If you think of additional spherical geometry functions you would like to see added to the geometry library, please log a feature request on the Maps API Issue Tracker. If you have any questions about using the geometry library, the Maps API v3 Forum is a great place to find help.
Posted by Thor Mitchell, Maps API Product Manager
Last week we opened the Chrome Web Store, an online marketplace where users can discover thousands of web apps, extensions, and themes for Google Chrome. With millions of people already using Chrome, the Web Store is a great platform for developers to generate both exposure and revenue for their applications.Many of these Chrome Apps are utilizing our Geo APIs. Here we’ve highlighted 5 great Chrome apps using Google Maps API. TripTrace
TripTrace organizes all the important places that you’ve been to or think you might want to visit; perfect for local exploration or vacation planning. Photos, events, and news are merged with your personal address book, check-ins, bookmarked web pages and more. Wikihood
Wikihood World Browser gives users with a unique way to browse and discover knowledge. By organizing Wikipedia articles geographically, users can quickly find information about a given location on the map. Wikihood makes browsing even easier by providing a short synopsis of an article on the left side when the article’s geolocation is selected on the map. Breadcrumbs
Breadcrumbs is a great GPS management tool. Users can visualize, organize, edit, and share GPS data collected from any GPS enabled device (including Android devices!). Breadcrumbs is also integrated with the Google Earth API for 3D visualizations. Delta Embark
Whether you’re planning your next vacation, trying to find a restaurant on your next business trip, or just looking for some travel inspiration this Chrome optimized travel guide is a delight to use. Travel planning made fun and easy, brought to you by Delta Airlines! Weatherbug
Don’t be late to Grandma’s this holiday season! Weatherbug let’s you view your weather and get the latest local current conditions, forecast, traffic information, and more for thousands of locations around the world.
To learn more about adding your apps to the Chrome Web Store, check out our developer documentation about apps and the store.Posted by Carlos Cuesta, Maps API Product Marketing Manager
In today’s guest blog post, Greg Gould of Geodesic Development) talks about how he created a unique Google Earth Hurricane Visualization using a custom .NET application to turn NOAA storm track data into a visually exciting KML animation of the 2010 hurricane season.
Geodesic Development was formed after several years of nights and weekends working on code and custom applications specifically designed to generate KML for Google Earth visualizations. Fascinated with the potential for developing new presentations in the 3D world of Google Earth, I’m focused on the “non-traditional” areas and visualizations which aren’t seen often or at all in Google Earth, especially in the main stream media. I hope that our visualizations will affect people’s perceptions of what’s possible in Google Earth.
I decided to create a Google Earth hurricane visualization to test ideas and explore the creative possibilities of animating ground overlays in ways I had not seen before in Google Earth. Hurricane data is readily available in KML from many different sources, but the static track lines and colored icons don’t present the storms in a visually exciting or dynamic way. I thought it was a perfect opportunity to develop an application to take seemingly unexciting data and highlight some new possibilities for presenting it with Google Earth.
The application I developed uses a custom .NET class library to handle the calculations, data processing, and KML text generation for each storm track, which was obtained from the National Oceanic and Atmospheric Association's (NOAA) National Hurricane Center website. Each storm data file is processed and exported to its own KML file and combined to visualize the entire season. It’s really a cool way to see how the storms developed and the track each one took for one of the busiest seasons on record.
Currently, NOAA provides storm track data in several formats, i.e. Shapefiles, XML, and DBF. For this application the DBF data is manually downloaded as a separate file which contains all the feature information needed to create the KML animation. This file is processed locally as a simple database table with known storm data for each track point, e.g. Name, Dates, Intensity, Category, and Position. These data points will determine which overlay to use and how it gets displayed.
Because this data inherently contains varied amounts of time (from 3 hours to as many as 72) and distance between track points, I had to control the display and transitions of the overlays with a series of loops which interpolate position, heading and rotation to fill in points between each segment of track data. This was an important step for creating a smoother animation and seamless overlay changes. I then use a pre-defined set of overlays, size settings, spin rates, and track icons to create a consistent look and feel for the whole presentation when animating the different layers and files together.
There were definitely some issues with creating a complex visualization like this, having it run smoothly, and all without overwhelming the cache in Google Earth. It took several iterations to find a good compromise between smooth animation and too many overlays (since <GroundOverlay> elements don’t contain the Track element). I think the bigger challenge was to coordinate the overlays, transitions, and track icons with the frequently changing storm data, and get them all to play nice together.
I learned a lot from this project and I think it demonstrates some new possibilities for interesting visualizations that are not typically seen in Google Earth. I hope you like this one, it was fun doing it and hopefully we’ll have some more to show off soon.
From the day the Maps API v3 was first announced we placed a special focus on it’s suitability for use on mobile browsers. Being able to develop a single maps application that works across all major desktop browsers and also on mobile devices is a key benefit of the Maps API. We are keen to make Maps API applications as accessible as possible, which is why we’re always excited to test new devices to determine if they meet our requirements for support.
Today we are therefore happy to welcome Samsung Bada and BlackBerry 6 touchscreen devices such as the Samsung Wave family and BlackBerry Torch 9800 to the fold. The full feature set of Maps API v3 is now available to users of these devices. We hope that as mobile browsers continue to improve across platforms we can continue to add new devices to our list of those we support.
Posted by James McGill, Google Maps API team
Maps API v2 had a built in animation that raised and bounced the marker when it was being dragged. When we looked into adding this feature to Maps API v3 we decided to go a step further and give developers more options for animating markers.
In addition to adding the drag animation offered in v2 we are today releasing two new marker animations that developers can trigger. Firstly there is BOUNCE which simply bounces a marker indefinitely to draw attention to it. The other is DROP which adds a marker to the map by dropping it from above with a small bounce.
We rely on a combination of JavaScript and CSS animations to ensure smooth motion across all devices, which was particularly challenging for the DROP animation, as it has a very short duration with a lot of movement. As a consequence this is the first feature we have launched that is not compatible with IE6 since we ended support for that browser (markers still appear in IE6 and can be dragged, but do not animate).
For more details on how to trigger animations check the documentation. While you are there you may notice that the MaxZoom service, which allows you to determine the maximum zoom level of satellite imagery available at a given location, is also now available in Maps API v3.
As always, if you have any questions about these features, or any other aspect of Maps API v3 development, we recommend that you post to the Google Maps API v3 Forum.
Posted by Jon Tirsen, Google Maps API team
Give us feedback in our Product Forums.