使用IBasicGeoprocessor接口的clip方法老是出现异常 尝试读取或写入受保护的内存。这通常指示其他内存已损坏"

现在想实现鼠标自定义绘制图形来裁剪shp文件,最后输出裁剪后的shp文件.
 IBasicGeoprocessor basicGeop = new BasicGeoprocessorClass();
                    basicGeop.SpatialReference = AxMapControl1.SpatialReference;
                    IFeatureClass outputFeatureClass = basicGeop.Clip(inputTable, false, clipTable, false, 0.01, featureClassName);
代码执行到最后一句就不行了,提示“System.AccessViolationException”类型的未经处理的异常在 DataLoading.dll 中发生 

TIM截图20180131133325.png



其他信息: 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
 
 
 
参考的代码在这里: http://www.cnblogs.com/yuxuetaoxp/p/3641971.html
                           方法三,在地图上拉框裁剪.
 有什么办法解决?或者有什么其他裁剪的思路?
 
已邀请:

朱新颖

赞同来自: 柚子

1,直接调用GP工具Clip,但是输入输出参数需要是要素类路径方式
2,使用ITopologicalOperator.Difference,先求与要裁剪的Shp有无交集或覆盖,然后用Difference求不同,再将新生成的Geometry保存到Feature中。

要回复问题请先登录注册