AO 直接调用GeoProcessing 工具
Geoprocessing是ArcGIS的一個基礎組成部分。無論你是一個新手抑或老資格的專家,geoprocessing都是你使用ArcGIS完成每天工作的一部分。它提供了數據分析、數據管理和數據轉換等對于所用GIS用戶都必須的工具,當然也包括ArcObjects開發者。
?GIS程序通常需要操作和分析地理數據,如將數據集從一種投影轉換為另一種投影,為表添加字段,或者為要素添加緩沖區。ArcGIS9包括了上百個geoprocessing工具來執行這些任務。本文將介紹ArcGIS Desktop和ArcGIS Engine用戶如何中ArcObjects應用程序中使用這些geoprocessing工具。
?
Geoprocessor
Geoprocessor是簡化調用geoprocessing工具任務的主要對象。這個對象是執行ArcGIS中任何geoprocessing工具的唯一訪問點,它是一個粗粒度對象,包含了許多屬性和方法,使得下面的操作變為可能:運行工具,設置全局環境參數;檢查結果消息,執行批處理,訪問數據屬性。
Toolboxes為geoprocessor定義了一套工具,Toolboxes可以添加到geoprocessor中,也可以從中刪除。(這句話的意思是,所有的geoprocessing都保存在Toolboxes中,Geoprocessor可以通過調用這些Toolbox的方式實現執行其中地理工具的目的;當然,它還可以直接調用工具類的方式執行)
?geoprocessor對象可以使用任何語言,包括VB,.NET和Java,來進行訪問。本文所有的代碼都將使用C#。幫助也為Java開發者提供了“Additional Resources for Programming with Geoprocessing Tools”資源。
ArcGIS9.2包含了一個新的.NET程序集ESRI.ArcGIS.Geoprocessor。它包含了一個被稱為Geoprocessor的托管類。每一個ESRI提供的toolbox也都表現為一個托管程序集。在每一個toolbox程序集中,都擁有許多類來表示每個geoprocessing工具。工具類的都是使用Geoprocessor來調用和運行的。
(這句話的意思是我們還有第二種調用地理工具的方法,即直接訪問其類).下面的例子展示了如何用AO來調用Geoprocessing.
using ESRI.ArcGIS.Geoprocessor; using ESRI.ArcGIS.AnalysisTools; public void SampleBufferTool() { // Initialize the geoprocessor. Geoprocessor GP = new Geoprocessor(); ESRI.ArcGIS.AnalysisTools.Buffer bufferTool = new ESRI.ArcGIS.AnalysisTools.Buffer(); bufferTool.in_features = @"D:\St_Johns\data.mdb\roads_Buffer"; bufferTool.out_feature_class = @"D:\St_Johns\data.mdb\roads"; bufferTool.buffer_distance_or_field = "distance"; GP.Execute(bufferTool, null); }轉載于:https://www.cnblogs.com/tuncaysanli/archive/2009/04/02/1428519.html
總結
以上是生活随笔為你收集整理的AO 直接调用GeoProcessing 工具的全部內容,希望文章能夠幫你解決所遇到的問題。