最近工作需要完成图像的裁剪,因为有很多需要裁剪的图像,用arcgis做的话工作量太大,而且后期工作涉及到自动化处理,所以写了段代码用engine实现图像的裁剪功能。首先要获得你所需要被裁剪的图层的IFeatureLayer和裁剪图层的IFeatureLayer,然后调用IBasicGeoprocessor.Clip方法进行裁剪,我把该方法单独封装了一下,代码如下:
public IFeatureClass Clip(IFeatureClass pInputFeatureClass, IFeatureClass pClipFeatureClass, string pfilePath, string pfileName)
{
IFeatureClassName pOutput = new FeatureClassNameClass();
pOutput.ShapeFieldName = pInputFeatureClass.ShapeFieldName;
pOutput.ShapeType = pInputFeatureClass.ShapeType;
pOutput.FeatureType = esriFeatureType.esriFTSimple;
//获取shapefile数据工作空间
IWorkspaceName pWsN =