使用地理處理工具

鏈接:https://www.jianshu.com/p/16a4950fec55
來源:簡書

  • 問題

  如何調用GP工具。

  • 解決方案

  執行IGeoProcessor.Execute方法調用GP工具。

            IGeoProcessor pGeoProcessor = new GeoProcessorClass();
            IVariantArray pVariantArray = new VarArrayClass();
            object varParr = "'" + var1 + "'#;'" + var2 + "'#;";
            pVariantArray.Add(varParr);
            pVariantArray.Add(varResult);

            IGeoProcessorResult pGeoProcessorResult = pGeoProcessor.Execute(toolname_toolalias,         
            pVariantArray, null);
  • 討論

  執行工具時,傳入的第一個參數Name爲工具的語法名稱,具體可以打開該工具的Tool Help,Synatx關鍵字下面顯示的即爲工具的語法名稱。 如:

Syntax
Intersect_analysis (in_features, out_feature_class, {join_attributes}, {cluster_tolerance}, {output_type})

Intersect_analysis 就是工具語法名稱。in_features建議使用數據的絕對路徑,如:

@"E:\work\vm_src\10.3\440784db.mdb\KJSJ\ZDJBXX_DB #;C:\Users\Xinying\AppData\Roaming\ESRI\Desktop10.3\ArcCatalog\Connection to 192.168.1.1.sde\SDE.ZDJBXX_DB #"

SDE中的絕對路勁爲.sde連接文件的絕對路徑+要素類名稱,在ArcObjects中可用IWorkspaceFactory.Create()方法創建SDE文件。另外,可在ArcGIS Desktop中執行該工具,在消息中可以查看參數的寫法。

  工具執行成功的消息可通過pGeoProcessorResult查看,如果執行失敗可能過pGeoProcessor.GetReturnMessages()獲取詳細報錯信息。

  • See Also

  How to run a geoprocessing tool
  How to get returned messages

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章