源贴 :http://hi.baidu.com/wiselyman/blog/item/d2dbd6f9dc83dc51242df2e2.html
英文源贴:http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#designing_overlay_gm_mve.htm
ArcGIS Server 9.3包含Google Maps和Mircosoft
Virtual Earth API的JavaScript扩展包。如果你想要使用这些扩展包来添加你的地图叠加到Google
Maps或者MicroSoft Virtual Earth上的话,按照下面的流程创建你自己的地图:
Author the map
你将在ArcMap中创建地图并添加数据且给以合适的标注。当你设计地图的时候,你将需要使用和Google Maps和microsoft virtual earth相同的坐标系统和比例尺。
Change the coordinate system to WGS 1984 Web Mercator
设计地图要做的第一件事情就是将数据框架的坐标系统改成和Google Maps 和microsoft virtual earth一样,即WGS 1984 Web Mercator。为了实现改变坐标系统,按照下面的步骤:
1、在ArcMap TOC(table of contents)上,右键点击data frame 名称(默认是Layers),并选择properties(属性)
2、点击Coordinate System 标签
3、点击 predefined->Projected Coordinate Systems->World->WSGS 1984 Web Mercator,然后点击“OK”
注意:
如果你数据的地理坐标系统(geographic coordinate
system)不是使用WGS1984 datum或者 GRS80
椭圆体(ellipsoid),你将需要将你的数据进行转换来正确的适应Google Maps和Virtual
Earth。NAD83就是一个使用GRS80椭圆体的地理坐标系统例子。不适用WGS 1984 datum或者FRS80
椭圆体的地理坐标系统还包括NAD27,ED50,等等,更多请看ESRI Knowledge Base Article 34749
(介绍如果进行这些转换)
Design at the Google Maps and Microsoft Virtual Earth scales
你地图的用户将会看到Google Maps和microsoft virtual earth使用的比例尺,所以你在设计你的比例尺的时候只能使用这些比例尺。但是你怎么知道这些比例尺都是多少呢?
你可以加载Google maps和microsoft virtual earth 的比例尺到你的 Arcmap 比例尺下拉列表(dropdown list),按照下列步骤:
1、将txt文件gmaps_ve_scales.txt
拷到一个你容易记住的地方。(这个文件放在C:\Inetpub\wwwroot\ArcGIS\Manager\Help\gmaps_ve_scales.txt)
2、打开 ArcMap 并且添加一些数据
3、点击比例尺下拉列表(dropdown list of scales)并且点击自定义这个列表
4、点击Load
5、打开gmaps_ve_scales.txt文件
6、点击OK使你的更改生效。你将看到所有的google maps/virtual earth的比例尺很轻松的显示了。
你仅仅需要将你的地图在对应比例尺下的外观做好就可以了,因为在每个比例尺下要做地图缓存。如果你不打算对大比例尺做缓存的话,你不必在这些比例尺做任何设计工作。
在你的图层上设置比例尺范围(scale ranges)可以做到在不同的比例尺上可以见到不同的内容。当你设置你的比例尺范围(scale ranges)的时候,避免在你编辑的比例尺上或者附近切换图层关闭或者打开。
你也许需要复制你的图层,这样你可以给它们在不同的比例尺以不同的符号。Arcmap
的toc可以包含一个图层的多个拷贝。每一个可以有自己的符号和比例尺范围。复制图层的步骤是:在arcmap toc
中邮件点击它并点击Copy。然后右键点击data frame 名称,再点击 Paste Layer(s)。
Publish the map as a service
在你完成创建你的地图文档(.xmd)之后,你需要将它发布成一个Arcgis Server map
service,这样你才能在你的JavaScript应用中使用它。最早的一种方式是在arccatalog上右键点击地图文档,再点击
publish to arcgis server
Learn more about publishing a GIS resource to the server
.
Create a map cache
Google maps和vritual
eart访问速度很快的一个原因就是他们使用了服务器端的地图缓存,这就意味着事先生成的图片被存储在服务器端,这样你就可以很快的通过一个URL很快的
访问了。使用arcgis server,你可以为你的地图创建一个类似的缓存。创建地图缓存是优化地图表现的所推荐的(也是在使用Arcgis
JavaScript extension for virtual earth必需的)。
地图缓存(Map caches
)部分包含了很多关于计划、创建、和更新地图缓存的细节。创建缓存的方式有很多种,下面是关键的步骤:
1、在arccatalog中右键点击服务(service),然后点击Service properties
2、点击Caching标签,选择“Using tiles from a cache that you will define below”来画地图
3、点击“Load tiling scheme from”,然后在下拉列表选择Microsoft Virtual Earth / Google Maps
4、如果有必要,更改缓存目录
5、点击create tiles,缓存工具将显示许多数据已经被填在上面。
6、不要勾选你不需要做缓存的比例尺。如果你的地图覆盖一个很大的区域,你在大比例尺下(zoom in)将看不到它,所以你不要勾选这些大比例尺
7、设置更新模式为Recreate All tiles 然后点击OK。工具将会创建这些tiles
依赖于你的地图有多大和你选择了哪些比例尺,创建所有的tiles将是一个很长的时间。见Planning a map cache
了解更多关于影响创建缓存时间的因素。
Once you've finished creating the cache, you're ready to use your map with Google Maps or Microsoft Virtual Earth. See Developing with ArcGIS Server: An Overview
to learn how you can develop JavaScript applications that overlay your maps with Google Maps and Microsoft Virtual Earth.
分享到:
相关推荐
将二维或三维点云数据叠加到google earth上,需要点云的经纬度和高程坐标
matlab语言编写,可用于将二维,三维影像叠加到google earth上
SuperMap iClient 6R for JavaScriptJavaScript天地图叠加REST地图服务由于天地图官网url地址更新,此范例重新制作
添加GPS位置标注 叠加图层 google地图显示
var config = { REQUEST:"GetMap", //操作名称 VERSION:"1.1.1", //请求服务的版本 SERVICE:"WMS", //服务类型标识符 LAYERS:"3", //用","分隔的多个图层列表 ... //将WMS图层添加到地图上
本例演示了在Flex客户端下,REST地图如何与天地图叠加。
SuperMap iClient 6R JavaScript Rest地图与WMS地图的叠加
书中详细介绍Google Maps API的应用,从开发环境搭建到事件、控件、叠加层、地址解析、本地搜索等,全面介绍,网点管理系统和地图搜索应用实例。
这是基于python的服务器,用于创建平铺地图的Google Earth叠加层。 您现在还可以在网络浏览器中显示地图,测量距离并将地图打印为高质量的PDF。 开发人员还可以将GEOS用作库来转换坐标或以编程方式访问地图打印...
arcgis中GPS数据和地图叠加显示,效果不错,本来可以免费,主要是没分了才要点积分,谢谢!
echart 实现 3d中国地图叠加 散点图 ,图表可任意拖拽
在3D山东地图的基础上,叠加柱形图散点图,希望对大家有所帮助。
Arcgis android 叠加天地图。需要的可以下载。
OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。...
OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。...
springboot+maven项目。实现了天地图矢量和影像底图瓦片图片的获取、叠加、图片融合拼接等功能;测试类TianDiTuDownload_ds
OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。...
Openlayer地图叠加瓦片,通过传入瓦片路径或者服务,和空间范围,进行叠加显示
JavaScriptGoogle叠加REST地图服务,实现google(谷歌)叠加范例数据Cina400
通过使用它,您可以轻松地在Google地图部分上设计和实现自己的自定义信息框。 文件 Google Map Custom Overlay入门非常简单。 按照Google Maps官方文档页面的说明初始化Google Map,然后使用CustomOverlay函数显示...