调用GP服务进行裁剪

    Geoprocessor gp = new Geoprocessor();
            gp.OverwriteOutput = true;
            IFeatureLayer inputfeaturelayer = pMap.get_Layer(0) as IFeatureLayer;
            IFeatureLayer cliplayer = pMap.get_Layer(1) as IFeatureLayer;
            IFeatureClass inputfeatureclass = inputfeaturelayer.FeatureClass;
            IFeatureClass clipfeatureclass = cliplayer.FeatureClass;
            IDataset dataset = inputfeatureclass as IDataset;
            IWorkspace workspace = dataset.Workspace;
            IFeatureWorkspace fworkspace = workspace as IFeatureWorkspace;
            IFields outfields = inputfeatureclass.Fields;
            IFeatureClass outfeatureclass = fworkspace.CreateFeatureClass("Clip_result", outfields, null, null, esriFeatureType.esriFTSimple, "Shape", "");

            ESRI.ArcGIS.AnalysisTools.Clip clipTool =
                new ESRI.ArcGIS.AnalysisTools.Clip(inputfeatureclass, clipfeatureclass, outfeatureclass);

            gp.Execute(clipTool, null);
            IFeatureLayer outlayer = new FeatureLayerClass();
            outlayer.FeatureClass = outfeatureclass;
            outlayer.Name = outfeatureclass.AliasName;
            pMap.AddLayer((ILayer)outlayer);

            axMapControlMain.ActiveView.Refresh();
本博客有部分内容来自网络,如有问题请联系:hebeilijianghua@qq.com,并注明来自博客园。
原文地址:https://www.cnblogs.com/leebokeyuan/p/5587588.html