zoukankan      html  css  js  c++  java
  • 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);







  • 相关阅读:
    黑苹果崩溃恢复
    黑苹果声音小解决方法
    idea plugin 进度条
    phpstorm 插件
    awesome mac
    webstorm vue eslint 自动修正配置
    Laravel/php 一些调试技巧
    php ZipArchive 压缩整个文件夹
    laravel 模型事件 updated 触发条件
    php 开启 opcache 之后 require、include 还会每次都重新加载文件吗?
  • 原文地址:https://www.cnblogs.com/janehlp/p/4443921.html
Copyright © 2011-2022 走看看