、概述
首先,來看一下效果圖:
▲分層設色——四川和重慶
▲店鋪標注——成都華陽街道店鋪標注
▲路線標注——成都地鐵一號線
地圖標注是地圖的有機組成部分,標記既是地圖上的功能符號,也需要用到藝術設計。無論是如測繪、設計、林業,還是個人興趣愛好如釣魚點標注等等都需要用到地圖標注,下面就一起來看下,如何實現地圖標注吧!
首先,我們要選擇在什么圖層上標注,是衛星圖層、還是電子地圖:衛星圖層可以通過導入格式名為.bmkpg的離線地圖包,電子地圖可以選擇百度、高德的地圖形式。
▲離線衛星圖數據包
▲疊加無偏移衛星圖的標注
▲疊加電子地圖的標注
標繪分為傳統的標繪和基于移動端電腦的標繪。現今,隨著科技的發展,從事測繪、林業等行業的人使用得最多的是基于平板、手機、電腦來工作和外業調繪。
二、傳統標繪
傳統標注,即基于紙圖的外業標繪和制印地圖,費時費力,需要逐個編輯,標記好固定就不能隨便更改,并且只適合一定比例尺下的地圖。
三、基于移動端電腦的標繪
1.手動標記
打開Bigemap大地圖,在軟件上方標記欄,選擇點、線、多邊形標繪、圓/橢圓/扇形標繪、矩形標繪,效果如下:
點和線:
面:
圓/橢圓/扇形:
2.導入標記修改
我們可以在軟件中選擇POI數據加載到地圖:
比如公交線路:
某個小區的店鋪:
也可以自行導入其他格式的自有數據(例如CAD等數據)進行修改:
比如行政邊界:
CAD等其他軟件的文件格式:
3.總體設置屬性
以上,無論是導入還是在軟件上的標記,都可以設置各種屬性。
<3.1修改顏色
<3.2修改或自添加圖標
<3.3修改文字屬性(如大小、字體、顏色)
<3.4統一設置/分別設置點線面屬性
<3.5修改標記點位置
設置好點線面屬性后,選擇下載范圍,在彈出的下載框勾選【疊加標注圖層】,即可本地保存標注好的文件。
線地圖數據是我們的車機在沒有聯網的狀態下使用導航的依靠,那么我們怎么下載、更新、刪除離線地圖數據呢?
下載離線地圖
首先,我們點擊打開導航的菜單
再點擊打開離線地圖
之后的界面就能看到當前所處的城市以及全國各地的離線地圖了,選擇下載你所需要的離線地圖數據即可。
注意,可以選擇下載你常用的多個省市的離線地圖,下載后即使在未聯網的狀態下也可以使用導航了。
更新離線地圖
離線地圖是下載到車機本地的,眾所周知,我們的道路、建筑等會隨著時間發生變化,那在我們下載了離線地圖以后,一定的時間以后,保存在我們車機本地的離線地圖可能有些位置已經不符合實際場景了,這樣我們使用起離線地圖的正確性也會降低,所以會每隔一段時間(一般1個月)更新發布一次離線地圖,那此時我們需要將新發布的離線地圖更新至我們的車機本地,那我們如何更新離線地圖呢?
首先,有可以更新的離線地圖時,導航的菜單鍵會出現一個小紅點提醒你,如下:
點擊打開菜單后,離線地圖上同樣會有小紅點提示,如下:
然后如下圖點開下載管理
然后選擇更新即可,如下:
所以,如果你平時使用離線地圖,請記得留意更新,以免因為地圖與實際場景的不同,給你造成出行的困擾。
刪除離線地圖
如果我們之前下載過離線地圖,現在不需要這些離線地圖,為了不讓它們占用我們車機的內存空間,那我們刪除這些不用的離線地圖是非常有必要的,如何將它刪除呢?
非常簡單的操作,我們只需要在離線地圖的下載管理里面,找到要刪除的離線地圖。
點擊這個離線地圖,就會彈出是否要刪除地圖的提示,如下圖,點擊確認即可。
里以湖北省荊州市為例說明如何用ArcGIS API發布離線谷歌衛星地圖。
在萬能地圖下載器中選擇湖北省荊州市的行政區劃,然后點擊“下載”按鈕新建下載任務。
在新建任務對話框中選擇需要下載的級別,一般是從當前行政區劃顯示的級別開始選擇(這里是第9級),一直接選擇到第19級(國內19級清晰度效果最佳,19級以上基于19級放大),由于數據量非常大,這里只為了說明如何用ArcGIS API發布離線衛星地圖的方法,因此這里以選擇到第14級為例。
在“新建任務”對話框中,點擊“導出設置”可以設置相關導出參數,我們可以選擇導出大圖、導出瓦片和導出離線包等三種方式。由于這里我們用ArcGIS API發布離線衛星地圖需要用的是瓦片格式,因此這里選擇“導出瓦片”選項。
新建任務詳細參數說明,請參閱:
新建地圖下載任務參數說明
在“導出瓦片”選項的相關參數中,我們選擇瓦片格式為“TMS瓦片”、文件格式為PNG,坐標坐標投影為墨認的“WGS84 Web 墨卡托投影”,選擇“邊界范圍裁剪”,背景顏色為“透明”背景。
導出瓦片詳細參數說明,請參閱:
導出瓦片參數說明
分別點擊“確定”按鈕開始下載任務,下載并自動導出后可以看到導出的瓦片目錄為8到13級而不是我們選擇的9到14級,這是因為軟件中的級別編號是從1開始,而標準的TMS瓦片命名規則都是從0開始,因此該情況屬于正常情況,瓦片的行列號編號規則同理。
在ArcGIS API發布離線衛星地圖的源碼示例中,將“arcgis_js_v321_api.zip”解壓到當前文件夾。
打開解壓后文件夾中的“install.html”可以查看ArcGIS API的安裝布署說明。
ArcGIS API可以在Windows和Linux系統中安裝布署,這里我們以Windows為例,點擊“Windows”查看布署方法。
從ArcGIS API的安裝布署說明中可以看到,需要將“\arcgis_js_api\library”文件復制到IIS默認站點下,該操作的目的是要將ArcGIS API放在Web站點中,說明它需要Web服務器支持。
另外,文檔中說明了ArcGIS API有兩個版本,一個是普通版,一個是精簡版。
現在,我們需要布署一個Web服務器,用于布署ArcGIS API源碼。
一般來講,常用的Web服務器軟件工具有IIS、Apache和Tomcat,這里我們以Windows自帶的IIS為例。
如何開啟IIS 功能,請參閱:
如何在Win10中開啟IIS功能
IIS功能開啟后,在電腦圖標的右鍵菜單中選擇“管理”菜單項。
在“計算機管理”的功能樹列表中點擊“服務和應用程序\Internet Information”項,然后在“網站”節點的右鍵菜單中選擇“添加網站”項。
在顯示的“添加網站”對話框中,可以為當前站點指定名稱(這里為“WebGIS”),將物理路徑設置為ArcGIS API解壓后的目錄,這里將端口號設置為“8080”,這樣不會與訪問Web頁面的80端口沖突,如果沒有布署過80端口的網站則不會有沖突。
點擊新建的Web站點“WebGIS”后,再點擊“內容視圖”可以查看站點文件。
Web站點布署好之后,我們再回過頭來看ArcGIS API的布署說明文檔,文檔中分別說明了普通版和精簡版中都需要對相關文件作修改編輯,這里我們以普通版本為例。
根據ArcGIS API布署說明文檔中的說明,在指定的源碼路徑中找到init.js文件,并在右鍵菜單中選擇用記事本打開它。
按文檔中的說明,將“https:/[HOSTNAME_AND_PATH_TO_JSAP]dojo”字符串修改為“https://<myserver>/arcgis_js_api/library/3.21/3.21/dojo”字符串。
其中的<myserver>表示服務器地址,由于我們這里是以在本機上布署為例,因此它要相應的改為本機地址,即127.0.0.1或localhost,同時需要加上端口號,即最后的替換結果為:
http://127.0.0.1:8080/arcgis_js_api/library/3.21/3.21/dojo
注意:文檔中的Web地址頭為“https”,如果你的服務器不支持安全加密訪問,只需要將地址頭改為“http”即可。
編輯修改成完成后,需要測試init.js文件是否可以通過Web地址正常訪問。
在瀏覽器中如果打開以下地址顯示init.js文件內容,說明布署正確。
http://127.0.0.1:8080/arcgis_js_api/library/3.21/3.21/init.js
ArcGIS API安裝布署完成后,將ArcGIS API離線地圖發布源碼示例中的“extlayers”文件夾復制到“arcgis_js_v321_api\arcgis_js_api\library.21.21”路徑下。
將下載的地圖瓦片目錄復制到ArcGIS API發布離線地圖的源碼示例中。
用專業的WebGIS開發工具Visual Studio Code打開“arcgis_js_v321_api\arcgis_js_api\library.21.21\extlayers\gaodelayer.js”文件,將第133行中的“gaodeTiles”字符串修改為當前的瓦片目錄名稱,即“荊州市谷歌地圖TMS瓦片”。
Visual Studio Code下載安裝教程,請參閱:
如何安裝WebGIS開發工具Visual Studio Code
雙擊ArcGIS API離線地圖發布源碼中的“map.html”文件,可以在瀏覽器中打開ArcGIS API發布的離線地圖結果。
在瀏覽器中打開離線地圖發布結果如下圖所示。
在該源碼示例中,除了能離線顯示谷歌衛星地圖外,還包括了基本的地圖標注等相關GIS功能。
ArcGIS API for JavaScript在線實例請參閱:
http://api.rivermap.cn/ArcGIS/map.html