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;
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);
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);