AE实现投影定义和投影转换

添加引用ESRI.ArcGIS.DataManagementTools

1.获取要定义和要转换的投影

1 IWorkspaceFactory wsf = new ShapefileWorkspaceFactoryClass();
2 IWorkspace ws = wsf.OpenFromFile(strProjPath,0);
3 IFeatureClass fc = (ws as IFeatureWorkspace).OpenFeatureClass("路中心线");            
4 ProSpaRef = (fc as IGeoDataset).SpatialReference;
5 IFeatureClass fc1 = (ws as IFeatureWorkspace).OpenFeatureClass("路中心线_Project");
6 GeoSpaRef = (fc1 as IGeoDataset).SpatialReference;
View Code

2.为shp文件定义投影

1 Geoprocessor gp = new Geoprocessor();
2 DefineProjection defPro = new DefineProjection();
3 defPro.in_dataset = strFile;
4 defPro.coor_system = ProSpaRef;
5 gp.Execute(defPro, null);
View Code

3.投影转换

1 Project defGeo = new Project();
2 defGeo.in_dataset = strFile;
3 defGeo.in_coor_system = ProSpaRef;
4 defGeo.out_coor_system = GeoSpaRef;
5 defGeo.out_dataset = strFoldPath + @"" + strNewname + strExtension;
6 gp.Execute(defGeo, null);
View Code
原文地址:https://www.cnblogs.com/fatherZyl/p/3309178.html