ArcEngine面要素转线要素

|▌冷眼眸甩不掉的悲伤 提交于 2020-08-11 13:46:04

转载: https://blog.csdn.net/u011609113/article/details/51347723

/// <summary>
        /// 面转线(GP法)(获取相邻面)需要最高ArcEngine权限
        /// </summary>
        /// <param name="IN_Featureclass">要转换的要素类</param>
        /// <param name="IN_SaveNeighborInfor">是否保存相邻区域信息</param>
        /// <param name="IN_LineName">转换后的要素名</param>
        /// <returns>转换后的要素</returns>
        private IFeatureClass PRV_PolyGonToLine_GP(IFeatureClass IN_Featureclass,bool IN_SaveNeighborInfor,string IN_LineName)
        {
            //要素数据集路径
            string Temp_FeaturedatasetPath;
            //要素数据集
            IFeatureDataset Temp_FeatureDataset = IN_Featureclass.FeatureDataset;
            if (Temp_FeatureDataset == null)
                Temp_FeatureDataset = IN_Featureclass as IFeatureDataset;
            Temp_FeaturedatasetPath = Temp_FeatureDataset.Workspace.PathName + "\\" + Temp_FeatureDataset.Name + "\\";
            //面转线
            Geoprocessor GP_Tool = new Geoprocessor();//GP运行工具
            ESRI.ArcGIS.DataManagementTools.PolygonToLine GP_PolyGonToline = new PolygonToLine();
            GP_PolyGonToline.in_features = Temp_FeaturedatasetPath + IN_Featureclass.AliasName;
            GP_PolyGonToline.neighbor_option = IN_SaveNeighborInfor.ToString().ToLower();
            GP_PolyGonToline.out_feature_class = Temp_FeaturedatasetPath + IN_LineName;
            GP_Tool.Execute(GP_PolyGonToline, null);
            //获取生成的要素类
            IFeatureClass Temp_FeatureClass = (Temp_FeatureDataset.Workspace as IFeatureWorkspace).OpenFeatureClass(IN_LineName);
            return Temp_FeatureClass;
        }

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!