之前介紹過網際網路地圖在TransCAD的線上調用方法,受到很多使用者的關注。由于各種原因,有時候線上地圖使用網際網路不太友善,本文介紹網際網路地圖在TransCAD軟體中的離線使用方法。TransModeler和TransCAD基于同一個GIS平台,是以他們是通用的,TransModeler的使用方法類似。本文提到的地圖資料,包括地圖、影像圖(衛星圖、航拍圖)、地形圖等。在TransCAD軟體中實作離線使用這些地圖的步驟是:
Step1、下載下傳瓦片資料,導出為tif檔案。
Step2、轉換為快速可讀取的ECW檔案。
Step3、設定合适的坐标和投影,在TransCAD中使用。
1 TransCAD調用線上地圖的方法
(1)基于GDAL(Geospatial Data Abstraction Library)技術。這是一個在X/MIT許可協定下的開源栅格空間資料轉換庫,TransCAD使用者可以采用定制的XML檔案調用網際網路線上地圖。這個方法對WMS、TMS、WMTS等各種協定的網際網路地圖都可以調用。如天地圖就是遵循WMS協定的。TransCAD提供了谷歌、OSM等地圖資源的調用,使用者可以根據開放的地圖資源情況,自己定制XML檔案來調用。關于此方法,公衆号文章《在TransCAD和TransModeler中使用網際網路地圖的方法》已經給出了介紹。具體請參見以下連結的網址:
“https://mp.weixin.qq.com/s/LYOw6sjLBxOGv38l9tBQEQ”
(2)采用Imagery菜單下的WMS Image Toolbox下載下傳WMS地圖。一般來說,這種資源可以同時開放多個圖層供選擇調用,詳細操作方式參看TransCAD使用者手冊。
2 網際網路地圖在TransCAD中的離線使用需求
離線使用地圖,主要是以下幾個情況:
(1)除了谷歌、OSM提供部分真實地理坐标的地圖外,國内大部分地圖是做了加密偏移的,即使使用者知道如何把自己的資料轉到和網際網路地圖比對起來,還是十分麻煩,也沒有辦法把網際網路的線上地圖糾偏過來。是以,希望離線拼合的地圖,在TransCAD軟體中采用圖檔注冊工具,進行适當糾偏後使用。
(2)由于地圖服務和網速原因,調用線上地圖有時很不順暢,離線地圖則可以解決這個問題。一種替代方案時,下載下傳地圖瓦片資料後,可以通過ArcServer釋出在機關區域網路,使用前面說的GDAL技術調用(當然也可以裝在本機釋出),這樣區域網路的通路速度就比較快。不過ArcServer釋出的環境配置和安裝比較麻煩,不如離線地圖用得友善。
(3)有些機關因為工作網絡環境問題,不能直接通路網際網路。
3 網際網路地圖在TransCAD中的離線使用的方法
要離線使用地圖,首先就是要把網際網路地圖下載下傳的圖檔進行拼合片。圖檔的格式有很多種,多數下載下傳軟體能導出tif格式的圖檔,但往往很大的時候會使軟體跑不動。是以需要對tif檔案進行壓縮轉換,這裡我們推薦使用優秀的ECW格式。即使是100G以上的ECW地圖資料,在TransCAD中都可以快速檢視。
3.1下載下傳網際網路瓦片資料
網際網路地圖一般是把地圖切成很多小的圖檔來實作浏覽功能,我們稱之為瓦片。目前市面上有比較多的專業下載下傳軟體,一般價格不高(1000元以内),例如太樂地圖、水經注、全能電子地圖下載下傳器等。也有免費的軟體,例如LocaSpaceViewer(隻能下載下傳谷歌地圖)。需要說明的是,下載下傳地圖可能涉及知識産權問題,使用者需要承擔非法下載下傳或使用的後果。
我們推薦用太樂地圖、水經注兩款軟體來下載下傳資料。因為他們提供了較多地圖資源的下載下傳,并且提供瓦片資料自動拼接,或按照ArcServer釋出功能要求導出資料。兩款軟體都可以自動拼合後輸出帶地理坐标資訊的GEOTiff格式的tif圖檔。當然,tif格式的資料是非常占空間的,通路稍微大點的tif圖檔就可能把TransCAD以及其他GIS軟體卡死了。
(1)太樂地圖下載下傳器
太樂地圖下載下傳器提供了多種地圖資源,但使用沒有偏離的WGS84坐标系的種類不多,典型的可用地圖主要有一下三種:谷歌地球、谷歌地圖和OpenstreetMap。
關于谷歌地球和谷歌地圖,一般認為是谷歌地球的影像圖較新,而谷歌地圖的交通網絡較新,是以不加注記選擇谷歌地球,加注記則選擇谷歌地圖。下載下傳方面,中國大陸城市18K以下精度的資源均比較有保證,但19K以上地圖資源缺失較多,且由于精度越高下載下傳量也越大,是以下載下傳任務容易被屏蔽。
太樂地圖提供了多種導出模式,主要包括瓦片和拼接兩大類。這裡采用拼接模式導出,預設選擇tif檔案格式(tif是栅格地圖,帶有坐标資訊,圖檔品質保真度高,友善後續的格式轉換)。
如果資料量太大,可以拼為多個tif檔案輸出。軟體預設瓦片數超過2萬個開始分割成多個檔案導出,一般而言5萬以内瓦片數導出的檔案都能夠比較高效的操作,是以建議5萬以内直接用單個檔案導出,減少後續的合并操作。需要說明的是tif檔案體量龐大,使用ArcGIS和TransCAD等軟體加載容易當機。
太樂地圖提供坐标轉換功能,但谷歌坐标、百度坐标、火星坐标等地圖資源轉換後均不是完全準确的WGS84格式,存在一定偏差,是以可以認為是僞坐标轉換。當然,這裡的糾偏功能能夠做一定修正。
(2)水經注萬能地圖下載下傳器
水經注萬能地圖下載下傳器也提供了多種地圖資源,并且具有使用者自定義地圖資源的接口。水經注萬能地圖下載下傳器的導出功能基本和太樂地圖差不多,不過不支援合并為多個tif檔案導出。
關于上述兩個軟體的具體使用方法,一般還是比較容易上手的,這裡不再詳細介紹了。上述軟體下載下傳瓦片資料後,推薦采用GEOTiff(tif)的格式導出,它們自帶了地理坐标資訊,友善用來轉換成ECW檔案。
3.2轉換tif檔案為ECW格式檔案
可以轉換tif檔案為ECW格式檔案的常用軟體,包括ERMapper、Global Mapper、FME、ERDAS等軟體。這裡我們介紹FME和GlobalMapper兩種軟體的使用方法。
(1)使用FME轉換
使用FME轉換可采用兩種方式,單個tif檔案的直接轉換或多個檔案的合并轉換。在tif檔案較多或有多個很大的檔案是,可以采用合并轉換。
[1] 直接轉換
當隻有單個tiff檔案的時候建議選擇直接轉換模式。打開FME,點選New,選擇GenerateWorkspace,在Reader區Format框選擇将要轉換的檔案的原始格式(可以使用search模式,點選倒三角,選擇MoreFormats,會出現清單框,在Search框輸入待轉檔案的字尾名即可),Dataset框選擇将要轉換的檔案;在Writer區的Format框設定目标檔案格式(同Reader),這裡選擇ERMapperECW,在Dataset框輸入目标檔案夾,需要注意的是這裡可以同步開展坐标轉換。
建立FME流程界面後,點選run即可得到結果。
注意:當有多個檔案,不想合并時也可以采用這種方式,輸入位置一次輸入多個檔案即可同時得到多個處理結果。
[2] 合并再轉換
當需要轉換的檔案需要合并時需要使用三個子產品, Reader (讀入子產品)、 Transformer (轉換器)和 Writer (寫入子產品)。具體操作: Step1 、點選 New ,選擇 BlankWorkspace 。 Step2 、添加 Reader ,菜單 Readers à addReader ,選擇需要合并的檔案。同單個檔案的處理方式,首先在 Format 框選擇檔案格式,然後再 Dataset 框選擇拟轉換檔案。注意:支援同一個目錄下面檔案多選,如有多個目錄,則需要添加多個 Reader 子產品。
Step3、添加Transformer轉換器,點選菜單Transformersàadd Transformer,選擇RasterMosaicker轉換器,并确認。
Step3、添加Writer子產品。菜單點選WritersàaddWriter。選擇目标檔案格式,選擇目标檔案夾,同樣,在坐标系系統設定位置可以選擇目标坐标系。
Step4、運作最終流程
(2)使用Global Mapper轉換
先使用GlobalMapper打開tif檔案,一般會提示你設定投影。投影參數的設定,最好和TransCAD相容。例如下載下傳了山西大同的谷歌影像圖,選擇6度分帶法高斯-克呂格投影,太原的經度是113附近,是以選19區,預設的基準面是WGS84,這裡可調整為Krasovsky1940,因為TransCAD裡6度分帶法高斯-克呂格投影提供的基準面沒有WGS84可選。如果這裡選了WGS84,就需要在TransCAD軟體中自定義相應的坐标系了。譬如FME裡面包含了我國的CGCS2000坐标系,使用該坐标系制作的ECW檔案,要在TransCAD中使用,就必須在TransCAD中自定義CGCS2000坐标系。TransCAD中自定義坐标系請參考公衆号文章《CGCS2000坐标系如何在TransCAD/TransModeler中添加》,連結為:
“https://mp.weixin.qq.com/s/bEoELFu4u0tkx2RemQEuBA”
後面的步驟相對比較簡單,找到菜單導出為ECW就可以了,一些導出參數的設定,這裡就不再介紹了。
4TransCAD添加ECW圖層
ECW檔案做好後,基本上是大功告成了。為了使ECW圖層和地圖資料比對,TransCAD地圖的投影(坐标系)必須和前面輸出ECW資料的投影(坐标系)一緻。如果ECW檔案的投影,在TransCAD中不支援,則需要先自定義投影(坐标系)。
TransCAD的地圖采用獨特的自動投影方式,使使用者在不同地圖比例,對不同地理位置的地圖能用合理的形狀檢視。譬如使用ArcMap打開WGS84坐标系的資料,你會發現地圖是扁的,TransCAD的自動投影則不會發生這種問題。當然,自動投影的參數,未必是ECW資料的投影參數。是以,需要先打開TransCAD的地圖,設定和ECW相同的投影(坐标系),這個步驟非常重要,否則地圖和ECW無法比對。
最後加載ECW圖層到地圖,你就可以離線使用地圖了。
再舉個例子,當你拿到一個坐标系為CGCS2000的ECW影像圖,你的TransCAD地圖采用經緯度的地理坐标,則可以右擊地圖點選屬性,選擇其坐标系為CGCS2000,ECW加載進來就可以完美對接了。