ArcEngine调用GP工具实现多边形Clip裁剪功能

       在做多边形裁剪的之前,在网上搜索了很多相关的帖子,代码都差不多,但是很多都没有说清楚,在实际的操作过程中有些地方需要注意和特别指明的,现将一些个人觉得需要注意的地方说一说:

   核心的代码只有下面几行就可实现裁剪:

               Geoprocessor g = new Geoprocessor();    //实例化一个GP对象
                g.OverwriteOutput = true;

                IFeatureClass input = ify.FeatureClass;

                ESRI.ArcGIS.AnalysisTools.Clip clip = new ESRI.ArcGIS.AnalysisTools.Clip(input, clipFea, inpath + “\\” + ify.Name + “_Clip”);  //创建clip裁剪工具

[PS:input指的是需要进行裁剪的图层或者shape文件;

         clipFea指的是用于裁剪的多边形,一般是shape格式文件;

         inpath + “\\” + ify.Name + “_Clip”这个参数容易出现错误,此处中inpath指的是结果裁剪结果输出的路径,”\\” + ify.Name + “_Clip”指的是裁剪结果的文件名。inpath必须为一个完整路径,如:”C:\\users\\administrator\\桌面”,如果只有路径,没有保存的文件名,则在该路径下,裁剪结果被保存成System.shp,该方法得到的裁剪结果一定是一个*.shp格式的文件。]
                g.Execute(clip, null);   //执行工具

       如果想要裁剪后的结果以featureClass的形式保存到mdb数据库中,可以到网上搜索相关代码,网上很多现成代码。

 

转载自:https://blog.csdn.net/longronggis/article/details/7953053

You may also like...