首先说说如何使用GP:
什么是GP,简单理解就是直接调用Arcgis 的toolbox的里面的功能,来进行数据处理。
要是有GP的话要在项目中先引用
ESRI.ArcGIS.Geoprocessor;
ESRI.ArcGIS.Geoprocessing;
这两个组件,然后再进行创建 Geoprocessor 对象
Geoprocessor gp= new Geoprocessor();
gp.OverwriteOutput = true;// 覆盖输出内容
最后使用 gp.Execute(XXX, null) 方法执行XXX //XXX表示某系方法 比如输出CAD等功能
下面附上 ESRI官方的示例
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);
}
这里有一个需要注意的是 bufferTool.in_features 这个参数,很多人会认为应该是 某个输入的要素类对象,但是这样很不稳定,会经常在GP.Execute(bufferTool, null); 的时候出现 调用COM组件错误,经研究和咨询,该处应该使用的是路径的方式,比如
..\data.mdb\roads_Buffer 这个表示的是data.mdb 里面的roads_Buffer的图层;
..\data.gdb\roads_Buffer 这个表示的是data.gdb 里面的roads_Buffer的图层;
以上的 就是直接将mdb和gdb库里面的图层进行直接的赋值,无需加载到工作空间后 在以要素类的方式进行赋值,这个问题相信会对看这篇文章的人有帮助。
以上就是gp的基本使用了,使用gp 能非常方便的解决很多问题。
下面附上一份网上搜罗来的一份AE/AO对照表
AE/AO开发工具与全名空间对应表
工具名称 | 命名空间 |
3D Analyst tools | ESRI.ArcGIS.Analyst3DTools |
Analysis tools | ESRI.ArcGIS.AnalysisTools |
Conversion tools | ESRI.ArcGIS.ConversionTools |
Data Management tools | ESRI.ArcGIS.DataManagementTools |
Cartography tools | ESRI.ArcGIS.CartographyTools |
Coverage tools | ESRI.ArcGIS.CoverageTools |
Geocoding tools | ESRI.ArcGIS.GeocodingTools |
Geostatistical Analyst tools | ESRI.ArcGIS.GeostatisticalAnalystTools |
Linear Referencing tools | ESRI.ArcGIS.LinearReferencingAnalystTools |
Multidimension tools | ESRI.ArcGIS.MultidimensionTools |
Network Analyst tools | ESRI.ArcGIS.NetworkAnalystTools |
Samples | ESRI.ArcGIS.SamplesTools |
Spatial Analyst tools | ESRI.ArcGIS.SpatialAnalystTools |
Spatial Statistics tools | ESRI.ArcGIS.SpatialStatisticsTools |
参考:感谢!
ArcEngine调用GP工具实现多边形Clip裁剪功能
https://blog.csdn.net/longronggis/article/details/7953053
ESRI.ArcGIS.AnalysisTools 与 ESRI.ArcGIS.Geoprocessor
https://blog.csdn.net/kone0611/article/details/43018021
GP的使用心得
http://www.cnblogs.com/liweis/p/4155941.html
http://www.cnblogs.com/liweis/p/4213673.html