999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

利用ArcPy 腳本實現TPK 文件制作

2019-07-30 07:10:16
山東林業科技 2019年3期
關鍵詞:方法

景 淼

(遼寧省林業調查規劃監測院,遼寧沈陽110122)

隨著林業信息化相關技術的發展,林業外業調查系統不斷進步,遼寧省在新一輪的林業信息化建設工作中, 更新了林業外業調查系統, 該系統以ARCGIS 為基礎開發, 實現了外業調查和內業處理的無縫銜接,TPK 文件作為系統的底圖文件格式,如何快速的制作TPK 文件成為了系統應用的關鍵。本文將詳細介紹如何使用ArcPy 腳本實現TPK 文件的制作。

1 ArcPy,Python,TPK 文件概述

ArcPy 是一個以arcgisscripting 模塊為基礎并繼承了arcgisscripting 功能進而構建而成的站點包。目的是以實用高效的方式通過Python 執行地理數據分析、數據轉換、數據管理和地圖自動化創建基礎。ArcPy 提供了豐富純正的Python 體驗,具有代碼自動完成功能,并針對每個函數、模塊和類提供了參考文檔。

Python 是一種計算機程序設計語言。 是一種動態的、 面向對象的腳本語言, 由荷蘭人Guido van Rossum 于1989年發明, 第一個公開發行版發行于1991年。 最初被設計用于編寫自動化腳本(shell),隨著版本的不斷更新和語言新功能的添加,越來越多被用于獨立的、大型項目的開發。 Python 是一種支持動態輸入的解釋型語言,適用于交互式操作以及為稱為腳本的一次性程序快速制作原型,同時其具有編寫大型應用程序的強大功能。用ArcPy 編寫的ArcGIS 應用程序的優勢在于,可以使用由來自多個不同領域的GIS 專業人員和程序員組成的眾多Python 小群體開發的附加模塊。

Tpk 是ArcGIS10.1 推出的一種新的數據文件類型, 主要是用于將切片文件打包形成離線地圖包,tpk 可以在 ArcGIS Runtime 或者 ArcGIS for Android/iOS 中作為切片底圖被加載, 有多種制作tpk 的方法

2 制作tpk 文件的方法

制作tpk 文件的方法主要有三種,Tpk 文件的制作是基于mxd 文檔的,所以要制作數據tpk 文件,必須先制作出mxd 文檔,下面以最常用的萬分之一分幅影像圖數據(.tif 格式)為例介紹一下tpk 文件的制作

2.1 使用ArcMap 制作tpk 文件

在ArcGIS10 中tpk 的生成被集成在了ArcMap中,制作方法如下:

(1)打開ArcMap,將數據加載進來,調整好數據的圖面位置,使其完全顯示,保存為mxd。

(2)打開mxd 文檔,選擇菜單“自定義”-“ArcMap”選項,在彈出的對話框中選擇“共享”選項卡,勾選“啟用ArcGIS Runtime 工具”;

(3)在文件菜單中的“共享為”菜單下就多了一個選項“切片包”,選擇該菜單,彈出“切片包”對話框,設置各個標簽頁中的參數,填寫完成后點擊“分析”,如果報錯則根據錯誤提示重新修改各個參數,最后點擊“共享”,開始制作tpk 文件:

2.2 使用ArcToolbox 工具制作tpk 文件

選擇ArcToolbox-數據管理工具-創建地圖切片包,運行該工具,彈出如下對話框:

選擇要制作tpk 的地圖文檔mxd,指定tpk 保存的位置,切片格式默認使用PNG,級別根據需要設置,點擊“ok“即可完成的tpk 制作。

2.3 利用ArcPy 腳本制作tpk 文件

(1)制作mxd 模板

打開arcmap,加載任意一幅萬分之一影像圖數據, 在地圖文檔屬性中填寫好相應的描述和標簽,保存為mxd 文檔。

(2)制作mxd 文檔

獲取mxd 模板: 使用arcpy.mapping.Map Document()獲取mxd 模板,MapDocument()用于訪問地圖文檔(.mxd) 的屬性和方法。

替換文件數據源:使用Layer.replaceDataSource() 方法替換mxd 模板的萬分之一影像圖數據數據源。

縮放到圖層:使用panToExtent()方法縮放到數據顯示范圍, 保證生成的tpk 文件能完全顯示萬分之一影像圖數據。

另存為mxd 文件:使用saveACopy()方法另存mxd 文件, 文件命名使用萬分之一影像圖數據名命名。saveACopy (file_name, {version})方法將地圖文檔(.mxd) 保存為新文件或較早版本

(3)制作tpk 文件

使用arcpy.CreateMapTilePackage_management()方法制作tpk 文件

CreateMapTilePackage_management (in_map,service_type, output_file, format_type, level_of_detail,{service_file}, {summary}, {tags}, {extent}),從地圖或底圖生成切片,并將切片進行打包從而創建單個壓縮的.tpk 文件,該方法一共9 個參數,其中有4 個參數為可選參數。

in_map 參數用于生成切片并對其進行打包的地圖文檔

service_type 參數確定是從現有的地圖任務生成切片方案還是根據ArcGIS Online、Bing 地圖和Google 地圖生成地圖切片。

output_file 參數輸出地圖切片包的文件名。

format_type 參數指定生成切片的格式, 一般使用PNG 格式。

level_of_detail 參數指定生成包切片的比例級別。 可選值為1 至20。 本文使用17 級

service_file 參數(可選) 指定用于切片方案的地圖服務或XML 文件的名稱。 僅當服務類型參數為EXISTING 時才需要此參數。

Summary 參數(可選) 將摘要信息添加到包的屬性中。

Tags 參數(可選) 將標簽信息添加到包的屬性中。 可以添加多個標簽,用逗號或分號分隔。

Extent 參數(可選)通過在范圍參數中按X-Min Y-Min X-Max Y-Max 格式手動輸入坐標來指定范圍。 要使用特定圖層的范圍,請指定圖層名稱。

使用該方法需要注意的是輸入地圖文檔 (即in_map 參數)必須具有相應的描述和標簽,此工具才能執行。制作tpk 代碼示例:

3 實現tpk 文件的批量制作

上文介紹的三種tpk 文件制作方法, 使用ArcMap,ArcToolbox 工具制作tpk,需要大量的人機互動,人為干預太多,導致效率低下,且無法實現批量制作。 利用arcpy 編寫python 腳本可實現tpk 文件的批量制作

3.1 批量制作mxd 文檔

利用上文所介紹的方法,增加for 循環,利用os.walk()遍歷指定文件夾下的所有文件,通過后綴名過濾, 得到.tif 后綴的所有文件, 通過循環逐一替換mxd 模板文件里.tif 文件的數據源并另存為指定文件名的mxd 文檔。 示例代碼:

3.2 批量制作tpk 文件

增加for 循環,利用arcpy.ListFiles("*.mxd")遍歷指定文件夾下的所有mxd 文件, 使用arcpy.CreateMapTilePackage_management()方法批量制作tpk文件。 示例代碼:

formxd in arcpy.ListFiles("*.mxd"):

arcpy.CreateMapTilePackage_management(mxd,"ONLINE", os.path.splitext (mxd)[0] + '.tpk', "PNG", "17")

3.3 開啟多個線程

ArcPy 腳本可開啟多個任務線程, 充分利用機器的處理器和內存。 經過多次制作實踐, 一臺16G內存的工作站可同時開啟5 個任務線程,大大提高了制作的效率, 筆者使用三臺機器,20 個小時制作了6000 張萬分之一影像圖數據的tpk 文件,tpk 切片等級為17 級,單張平均時間為3 分鐘。

4 結語

使用ArcPy 實現tpk 文件的批量制作, 減少人工干預,極大的提高了工作效率,對完善和提升遼寧省林業外業調查系統功能具有至關重要的意義,有助于全省林業信息化水平向更高層次發展。

猜你喜歡
方法
學習方法
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 小说 亚洲 无码 精品| 欧美国产在线一区| 国产精品无码一区二区桃花视频| 99手机在线视频| 精品无码日韩国产不卡av| 人妖无码第一页| 国内嫩模私拍精品视频| 在线观看精品国产入口| 亚洲乱伦视频| 高清久久精品亚洲日韩Av| 欧洲高清无码在线| 亚洲视频在线观看免费视频| 亚洲视频无码| 亚洲视频在线观看免费视频| 农村乱人伦一区二区| 91久久性奴调教国产免费| 国产一在线观看| 嫩草在线视频| 国产黄在线观看| 97视频免费在线观看| 久青草免费在线视频| 国产视频欧美| 天堂在线www网亚洲| 91久久精品国产| 又粗又大又爽又紧免费视频| 九九九九热精品视频| 久久国产亚洲偷自| 99久久国产综合精品2020| 成人自拍视频在线观看| 成人永久免费A∨一级在线播放| 国产天天射| 996免费视频国产在线播放| 亚洲区视频在线观看| 日韩欧美中文亚洲高清在线| 国产精品视频久| 亚洲精品制服丝袜二区| 国产无码精品在线播放 | 午夜免费小视频| 免费大黄网站在线观看| 国产午夜福利亚洲第一| 久久永久视频| 午夜天堂视频| 精品亚洲欧美中文字幕在线看| aa级毛片毛片免费观看久| 国产人人射| 91亚洲视频下载| 一本大道无码日韩精品影视| Aⅴ无码专区在线观看| 精品国产成人三级在线观看| 在线欧美国产| 青青青国产免费线在| 欧美专区在线观看| 一区二区三区四区精品视频| 国产精品视频猛进猛出| 日本人又色又爽的视频| 97久久精品人人| 日本黄色不卡视频| 女人一级毛片| 国产免费久久精品44| 色婷婷在线影院| 天天综合网色中文字幕| 日本一本在线视频| 久久久精品久久久久三级| 色婷婷在线播放| 国产日韩精品欧美一区灰| 久久婷婷色综合老司机| 国产凹凸视频在线观看| 国产精品福利尤物youwu | 久久久国产精品无码专区| 日韩AV无码一区| 日韩毛片在线播放| 国产一区二区免费播放| 蝌蚪国产精品视频第一页| a亚洲天堂| а∨天堂一区中文字幕| 国产女人水多毛片18| 国产毛片片精品天天看视频| 国产黄视频网站| 亚洲精品动漫| 看看一级毛片| 久久久久无码国产精品不卡| 朝桐光一区二区|