Google earth中调用ArcGIS server的REST服务和WMS服务

原创 2013年12月05日 15:32:47

项目中用户要求能把业务数据叠加到Google earth上,于是测试了下ArcGIS server的REST和WMS两种服务。REST和WMS两种服务都可以叠加,测试的坐标系是经典的WGS84,代号4326。坐标系不一致要先做转换。

1、叠加REST服务

登录到ArcGIS server的8399REST目录,选择一个服务,查看信息时,可以看到google earth的链接:

服务地址;http://192.168.0.96:8399/arcgis/rest/services/CHINA_400w/MapServer


点击后,会下载一个KMZ文件,直接用GE打开,就可以看到该REST服务已经叠加到球上:


将刚才的KMZ用记事本打开(不会不知道先将后辍改成zip,然后解压成KML),可以看到KML内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.2">  
<NetworkLink>
  <open>1</open>
  <name>world100W_country</name>
  <LookAt>
 <longitude>18.840234937598495</longitude>
 <latitude>27.38404422293665</latitude>
 <range>2.0673782877150193E7</range> 
</LookAt>
  <Region>
    <LatLonAltBox>
      <north>92.3087898332042</north>
      <south>-98.6813709443336</south>
      <east>198.777542234891</east>
      <west>-198.795205402612</west>
    </LatLonAltBox>
    <Lod>
   <minLodPixels>128</minLodPixels>
<maxLodPixels>-1</maxLodPixels>
    </Lod>
  </Region>
  
  <Link>
<viewRefreshMode>onStop</viewRefreshMode>
<viewRefreshTime>2</viewRefreshTime>
<href>http://192.168.0.96:8399/arcgis/rest/services/world100W_country/MapServer/export</href>
<viewFormat>
f=kmz&amp;bboxSR=4326&amp;imageSR=4326&amp;format=png24&amp;transparent=true&amp;bbox=[bboxWest],[bboxSouth],[bboxEast],[bboxNorth]&amp;size=[horizPixels],[vertPixels]&amp;
</viewFormat>
</Link>
</NetworkLink>
</kml>

其中红色的就是REST服务的地址,个人分析,参加的原理还是一个图片叠加层。熟悉KML的人可以直接自己写这样一个文件。添加上去的服务,可以随球放大、缩小,与在ArcMap或者FLEX应用中浏览服务的效果一样。线形放大小后变细,总之就是跟后台MXD配图展示的效果是完全一样的。


2,叠加WMS服务

WMS是OGC推出的中国稍微用得多一点的服务标准,虽然ESRI在实现的时候将WMS与其REST服务等捆绑在一起了,并且在查询分析功能上弱化,但是不能不承认的是,实现的接口标准还是非常规范。

添加的方式是在GE中添加“图像叠加层”:



在弹出窗体中选择“刷新”,点击“WMS参数”:


在弹出窗体中点击“添加”:


在弹出窗体中输入WMS服务的URL:

http://win-wz7mdfoojn6:8399/arcgis/services/CHINA_400w/MapServer/WMSServer



确定后回上级页面:可以看到图层已添加


逐一将左框中图层添加到右框中,点击“确定”或“应用”:


白色推测主要是背景色没透明的原因。不管怎样,GE能直接支持WMS,还是让我挺意外的,不得不叹服,标准接口还是很有用处。

相关文章推荐

Arcgis Server服务中rest服务和wms服务的对应关系

我们在用Arcgis Server发布服务时,会发布Mapserver的同时发布Wmsserver服务,但是,调用的图层的顺序却相反,本文从几个例子详细介绍下rest服务和wms服务的对应关系。...

ArcGIS学习(五)OpenLayers调用WMS服务

OpenLayers: OpenLayers是一个开源的js框架,用于在您的浏览器中实现地图浏览的效果和基本的zoom,pan等功能。OpenLayers支持的地图来源包括了WMS,Google...
  • drr789
  • drr789
  • 2013年05月31日 11:28
  • 7998

ArcGis Server的集中地图服务WMS/WFS/WCS介绍

WMS: Web Map Service(Web地图服务)     利用具有地理空间位置信息的数据制作地图。其中将地图定义为地理数据可视的表现。这个规范定义了三个操作: (1) GetCapabi...

关于使用Silverlight通过IP地址访问本地ArcGIS Server发布的Rest服务无法出图的问题

  之前在用Silverlight访问本地的Server服务时,出现了用localhost可以出图,用IP却无法出图的问题。看到网上遇到同样问题的同学,特把解决的方法分享给大家。  使用localho...

ArcGIS Server 发布 REST 服务

Rest接口的配置主要涉及四个步骤: 1、在Mangaer中到导出est服务所对应的.war包; 2、将.war包放到Tomcat的虚拟目录中; 3、重新启动ArcGIS Serve...

ArcGIS Server 10 Java 版的Rest服务的部署方法

最近笔者使用ArcGIS Server 10 Java版发布GIS服务,当使用ArcGIS Manager创建好服务后,然后打开“ArcGIS Services Directory”的链接时发现网页报...

Arcgis for Js之加载wms服务

本节讲述Arcgis for Js加载ArcgisServer和GeoServer发布的wms服务。

Cesium引入wms服务,并实现不同图层的切换调用,及轮流播放

DOCTYPE html> html lang="en"> head>     meta charset="utf-8">     meta http-equiv="X-UA-Compatib...

C#解析WMS服务源代码

  • 2015年11月11日 11:52
  • 985KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Google earth中调用ArcGIS server的REST服务和WMS服务
举报原因:
原因补充:

(最多只允许输入30个字)