Background
Looking to display a map (for internal use only) on a web page. The application must be able to add custom layers (without sending the data to the map service host):
- Municipal zones (defined by shapefiles)
- Custom zones (defined by polygons, possibly in terms of Municipal zones)
- Site locations (defined by lat/long)
- Additional city data (defined by shape files)
Because it is a private venture, it eliminates many map services, including: Google Maps, Bing, Yahoo! Maps, MapQuest, and other pay-for-use services.
Update #1
Perhaps MapQuest is a possibility.
Update #2
Requirements that I forgot to mention:
- There are additional data (cities, towns, hamlets) not part of OpenStreetMap. These cities must be included without giving the data to the map provider.
- There are various layers (such as employee locations) that also must be displayed, without telling the map provider where to find the data (i.e., the data will be behind a firewall).
Current Development
Currently, I have not been able to find a server that meets my requirements, so I have been following the instructions across various web sites to install a Mapnik web server:
- http://dbsgeo.com/foss4g2010/html/_static/pdf/osm-rendering-foss4g2010.pdf
- http://osgeo.org.cn/l18n/geodjango/install.html
- http://wiki.openstreetmap.org/wiki/Mapnik/Installation
- http://www.postgresonline.com/journal/archives/180-pgAdmin113plugins_postgis.html
- http://blog.geoserver.org/2009/01/30/geoserver-and-openstreetmap/
- http://workshops.opengeo.org/stack-intro/postgis.html
- Bulk load multiple shapefiles into PostGIS
At this point, I have various pieces of the data:
- City and municipality data (shape files loaded into PostGIS)
- Natural Earth data (shape files; not loaded)
- Mapnik stylesheets (various files; not loaded)
GeoServer
I tried installing GeoServer (prior to Mapnik) but found the documentation to be lacking, the web-based administration tool to be cumbersome to configure, and the responsiveness on a 2 GHz machine to be painfully slow (10 seconds to render a tile with a single layer: roads), and the default aesthetic bland. (I know I can use stylesheets to liven up the presentation, but that means having to find [or create!] suitable files, install them, test them, and so forth.)
Requirements
The technical requirements include:
- Cities, roadways, bodies of water (lakes, rivers, oceans)
- Political boundaries (provinces, countries)
- High quality (visually similar to Google Maps, MapQuest, etc.)
- High uptime
- 900913 projection (similar to Google Maps)
- Responsive tiles (under 0.1 seconds per tile)
- Excellent coverage of street data for Canada
- Useful for slippy map (compatible with OpenLayers)
- 10,000 tile requests per day
- Free for commercial (or private) use, or less than $2000 per year?
Good Example
Here is an excellent example (OpenLayers) of what I'm looking to achieve:
Bad Examples
An example of what I'm not looking to achieve:
An example of incomplete data:
Related Links
- http://atlas.nrcan.gc.ca/site/english/dataservices/web_map_service.html
- http://columbo.nrlssc.navy.mil/ogcwms/servlet/WMSServlet
- http://wiki.openstreetmap.org/wiki/WMS
- http://geoserver.org/display/GEOS/Available+WMS+and+WFS+servers
- http://www.skylab-mobilesystems.com/en/wms_serverlist.html
- http://www.ogcnetwork.net/servicelist
- http://ows-search-engine.appspot.com/ - [broken]
Question
What WMS, WMTS, or WFS servers offer the required functionality?