介绍

osgeo.org
OpenLayers是开源地理空间基金会OSGeo下的一个项目,免费且开源的js库,支持OGC的标准和规范,如WMS、WFS等,开发者可以在其官网(http://www.openlayers.org/)上下载到最新的开发包(时下最新版本为v2.10),应用到实际项目中,快速构建WebGIS项目,OpenLayers还支持其它第三方地图服务厂商,如Google、Virtual Earth、Yahoo、ESRI等,从而实现地理信息的集成、共享与应用。

入门示例

 
  
  1. <html> 
  2. <head> 
  3. <title>我的OpenLayers入门程序</title> 
  4. <META  charset="utf-8"> 
  5. <script src="http://www.openlayers.org/api/OpenLayers.js"></script> 
  6. <script type=text/javascript> 
  7. (function(){ 
  8.     var map, layer; 
  9.     var lon = 105.9960, lat = 36.8701, zoom = 3
  10.     window.init=function(){ 
  11.         map = new OpenLayers.Map('divMap'); 
  12.         layer = new OpenLayers.Layer.WMS("OpenLayers WMS", 
  13.                 "http://labs.metacarta.com/wms/vmap0",  
  14.                 { layers: 'basic' }); 
  15.         map.addLayer(layer); 
  16.         map.setCenter(new OpenLayers.LonLat(lon, lat), zoom); 
  17.         map.addControl(new OpenLayers.Control.LayerSwitcher()); 
  18.         map.addControl(new OpenLayers.Control.MousePosition()); 
  19.     }; 
  20. })(); 
  21. </script> 
  22. </head> 
  23. <body onload="init()"> 
  24.   <div id="divMap" style="height: 400px; width:600px; border:solid 1px gray"></div> 
  25. </body> 
  26. </html> 

P.S. 使用过ESRI的rest风格的地图服务的同志,结合个人前面的博文《Google Maps JSAPI V3入门》中的示例可以看出,在OpenLayers和Google Map中指定图层名是能过option设置来完成,比ESRI的rest风格的地图服务使用起来稍多麻烦点,不过习惯就OK了。