设计自己的地图叠加到 Google Maps或者 MicroSoft Vitual Earth

源贴 :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.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值