`

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

    博客分类:
  • Gis
阅读更多

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

分享到:
评论

相关推荐

    Data Visualization with the Virtual Earth ASP.NET Controls

    Virtual Earth(后来更名为Bing Maps)是微软提供的一项服务,它提供了丰富的地图API和控件,开发者可以利用这些工具在Web应用中集成高清晰度的地图、卫星图像和街景视图。在ASP.NET环境中,Virtual Earth控件允许...

    google earth二次开发教程

    Google Earth 二次开发...Google Earth 和其它虚拟地球系统,如 World Wind、Microsoft Virtual Earth、ESRI ArcGIS Explorer 等都提供了地球浏览和地图服务,但 Google Earth 是最受欢迎和最广泛使用的虚拟地球系统。

    典型的电子地图站点——一些常用的电子地图网站

    4. Google Maps:Google的在线地图服务,包括栅格地图和卫星影像,并提供API供开发者集成到自己的应用中,如叠加卫星影像、路线规划等。 5. Yahoo Maps:雅虎提供的地图服务,同样提供API供开发者使用,便于地图...

    bingmapswithelevation

    3. **地图渲染**:在"bingmapswithelevation"中,可能涉及到地图的自定义渲染,比如在地图上叠加高度数据,生成等高线图或者3D地形模型。 4. **Web开发技术**:项目中包含的".sln"(解决方案文件)和".suo"(用户...

    bing maps control

    Microsoft.Maps.HttpUtils.load('http://dev.virtualearth.net/REST/v1/Locations', { params: geocodeRequest, callback: function (result) { console.log(result); } }); ``` - **显示结果**: ```...

    openlayer4最新源码包

    OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。...

    OpenLayers 2.12

    OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。...

    GeometryEdit.md

    OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。...

    2008ESRI中国区域用户大会资料集 Flex&JavaScript

    - **数据叠加**: 允许用户将自己的数据叠加到 ArcGIS Online 的基础地图上。 - **GIS 模型执行**: 在服务器上执行 GIS 模型,并展示结果。 ##### 3. ArcGIS JavaScript API 内容 - **地图显示**: 支持 ArcGIS ...

    OpenLayers 4.3.2

    OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。...

    Manifold Power Pack-开源

    2. Manifold.ImageServer.VirtualEarth.dll:虽然微软的Virtual Earth已经被Bing Maps所取代,但这个文件可能仍然支持旧版的接口。它使用户能够在Manifold GIS中接入微软的地图服务,获取地图数据,进行地理空间分析...

    OpenLayers项目分析

    4. **多样化地图服务集成**:OpenLayers可以与多种地图服务进行交互,如WMS、WFS,还可以集成Google Maps、KaMap、Microsoft Virtual Earth、NASA WorldWind等商业或开源地图服务。此外,也可以直接使用静态图像作为...

    openlayers项目分析文档

    此外,OpenLayers 能够接入多种地图服务,如WMS、WFS,以及商业服务如Google Maps、KaMap、Microsoft Virtual Earth和NASA WorldWind。开发者还可以使用静态图像作为地图源。 在实际应用中,例如加载WMS服务和GML...

    ogo_openlayersfulldoc.pdf

    它提供了一个JavaScript API来构建丰富的基于Web的地理应用,与Google Maps和MSN Virtual Earth等API类似。与其他API不同的是,OpenLayers是自由软件,由开源社区开发并为开源社区服务。 #### 表格目录概述 文档...

    ArcGIS的缓存技术

    它还支持与其他地图服务(如ArcGIS Online、Google Maps、Virtual Earth)的集成,通过兼容GMAPS或VW的Scale规则创建缓存,实现地图服务的无缝集成。 ArcGIS提供了一系列的缓存管理工具,用户可以在ArcCatalog中...

    国内外主流的三维GIS软件

    今年6月,微软推出Bing搜索后,意味着原来的“Virtual Earth”变成了“Bing Maps and Bing Maps for Enterprise”。  五重唱·美国环境系统研究所公司(ESRI): ArcGIS Explorer--ArcGIS家族的3D后代  介绍:...

    Silverlight实例

    2. **地图数据集成**:该实例可能使用了Microsoft Virtual Earth API(现已被Bing Maps API取代)来获取地理数据。Silverlight应用可以通过Web服务接口与服务器进行通信,加载地图图像并进行动态叠加。 3. **用户...

Global site tag (gtag.js) - Google Analytics