OpenLayers调用arcgis server发布的地图服务

有两种方式可以调用arcgis server发布的地图服务,一种是rest,一种是wms。 
地图的投影为900913,arcgis server为10.0版本,地图服务的空间参考为3857。
 
与Google Map相对应的ArcGis投影文件:

众所周知,Google Map的投影参考为"WGS 84 Web墨卡托",定义为 EPSG:900913 或者 EPSG:3857 (EPSG:3785)。
与此相对应的ArcGis的投影坐标系名称为:WGS 1984 Web Mercator。ArcEngine 下,代号为"102113"。

如果openlayers需要调用arcgis server的地图,需要做相应的坐标转换。

采用在openlayers客户端重投影方式设为102113。

 
ArcGIS93Rest方式:
 1 var layer = new OpenLayers.Layer.ArcGIS93Rest(
 2                  "地理单元动物种类分布图",
 3                  "http://ws02/ArcGIS/rest/services/cgcxdldydwzl/MapServer/export",
 4                  {
 5                      layers: "show:0,1,2,3",
 6                      TRANSPARENT: true
 7                  },
 8                 {
 9                      isBaseLayer:false,
10                      visibility: true,
11                      projection: 'EPSG:102113',
12                      format:"image/png"
13                }
14  );
15 this.map.addLayer(layer);

 

WMS方式:
1 var layer = new OpenLayers.Layer.WMS("地理单元动物种类分布图", "http://ws02/arcgis/services/cgcxdldydwzl/MapServer/WMSServer?",
{
2 layers : "0,1,2,3", 3 format : "image/png", 4 transparent : "true" 5 },
{
6 isBaseLayer : false, 7 singleTile : false, 8 projection: new OpenLayers.Projection("EPSG:102113"), 9 });
10 this.map.addLayer(layer);

 








转载于:https://www.cnblogs.com/janehlp/p/4443921.html

你可能感兴趣的:(OpenLayers调用arcgis server发布的地图服务)