【转】ArcGIS server如何将自己的小地图叠加到Google maps或者Virtual Earth上
如果要將自己的數據與ArcGIS online的數據疊加使用,那么:1、應該選擇后者為Primary Map Resource(有一種情況下,可以將自己的服務作為Primary Map Resource,就是自己數據的坐標系與ArcGIS Online或Google Map的坐標系相同,但cache的比例尺級別只是它們其中一個子集。);2、對于自己數據的地圖文檔,在data frame中將坐標系選擇成Predefined > Geographic Coordinate Systems > World > WGS 1984,ArcMap會將你的數據動態投影到該坐標系下;3、做cache的時候選擇load an existing tiling scheme from ArcGIS Online Services,這樣能保證比例尺級別與其相同,ArcGIS Online默認有十幾級cache,對于自己的數據,可以創建其中的幾級,但可能出現的情況請參照前面的分析。對于要和Google Map疊加的數據,步驟也是上面的1、2、3,注意在2中要選擇:Predefined > Projected Coordinate Systems > World > WGS 1984 Web Mercator。
?如果在步驟3中,點擊load an existing tiling scheme時出錯,那很有可能是你跳過了步驟2。
?
?
?????? 其他網上資料:
?
使用空間參考
地圖上的要素指的的是實際世界中的物體的位置。這些物體的在球面上的位置是用經緯度來衡量的,這就是我們所知道的geographic coordinates 。雖然經緯度可以準確的表示物體在球面上的位置,但是它們不是測量的單位;為了解決測量問題,數據經常通過projected coordinate system .,從3D的地理坐標地圖轉換為2D的平面。投影坐標系統描述到一個原點是(0,0)---(X軸代表東西和y軸代表北南的坐標系)的距離
因為地球是圓的地圖是平的,從彎曲的球面獲得平面的信心需要一個轉換叫做map projection(地圖投影)。一個地圖投影將經緯度坐標轉換為一個projected coordinate system的x,y坐標。
術語坐標系統(coordinate system),它包含地理和投影坐標系統。它被用來描述投影、數據、單位和子午線信息。
每一個坐標系統通過眾所周知的ID(WKID)和一個字符串(WKT)來定義。
| ????????? 設計自己的地圖疊加到 Google Maps或者 MicroSoft Vitual Earth | |
| Release 9.3 ArcGIS JavaScript? Extension for the Google Maps? API Release 9.3 ArcGIS JavaScript? Extension for Microsoft Virtual Earth? | |
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.
總結
以上是生活随笔為你收集整理的【转】ArcGIS server如何将自己的小地图叠加到Google maps或者Virtual Earth上的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华工计算机网络随堂练习答案,计算机电路基
- 下一篇: 现代黑科技版“指鹿为马:使用CycleG