Is there a part of the api for access different map layer data such as population heat maps, county boundaries or zipcode lines?
I know this is mostly handled by people like ESRI/ArcServer but I was curious is there was some way to get similar information on the phone platform.
At this point, the only way i see it, is to have a huge data set, parse it, and draw the polygons myself. This sounds extremely time consuming on a phone.
Sadly Google, Bing Maps et al. don’t expose access to their datasets in anything other than the pre-defined road, satellite styles etc. As tghamm suggests, your best bet for a performant solution on a mobile device is not to draw dynamic polygons, but pre-render your own raster tilesets for the area/zoom levels at which you want to display the data and display these as a custom tile layer ontop of the map control.
A good toolchain for creating such a tileset is:
1.) Use SQL Server Express (or PostGIS, if you prefer) as backend spatial DB – http://www.microsoft.com/express/sql/ ($0)
2.) Get necessary data in shapefile format – http://www.diva-gis.org/Data ($0)
3.) Load the shapefile data into SQL Server – http://www.sharpgis.net/page/shape2sql.aspx ($0)
4.) Write a query to retrieve the necessary information from SQL Server (or retrieve it directly from shapefile) and render it to tiles using Mapnik – http://www.mapnik.org ($0)
Total cost, $0.
Also, be sure to check out open street map – http://osm.org, which provide access to their entire database that you can download and render yourself – in many areas of the world (although not all) it beats both Google and Microsoft in quality and completeness of its data.