using ESRI.ArcGIS.Geometry; using ESRI.ArcGIS.Geodatabase; namespace CHN.gzGISer.ArcEngine { public class CoordinateTransformation { public CoordinateTransformation() { } /// <summary> /// 投影坐标系转WGS84地理坐标系 /// </summary> /// <param name="point"></param> /// <returns></returns> public static IPoint ProjectToWGS84(IPoint point) { ISpatialReferenceFactory pSpatialReferenceFactory = new SpatialReferenceEnvironmentClass(); ISpatialReference pSpatialReference = pSpatialReferenceFactory.CreateGeographicCoordinateSystem((int)esriSRGeoCSType.esriSRGeoCS_WGS1984); point.Project(pSpatialReference); return point; } /// <summary> /// 投影坐标系转2000坐标系 /// </summary> /// <param name="point"></param> /// <param name="path">2000坐标prj文件</param> /// <returns></returns> public static IPoint ProjectToCGCS2000(IPoint point, string path) { ISpatialReferenceFactory pSpatialReferenceFactory = new SpatialReferenceEnvironmentClass(); ISpatialReference pSpatialReference = pSpatialReferenceFactory.CreateESRISpatialReferenceFromPRJFile(path); point.Project(pSpatialReference); return point; } /// <summary> /// WGS84投影至其他 /// </summary> /// <param name="point"></param> /// <param name="pSpatialReference"></param> /// <returns></returns> public static IPoint Geo_WGS84ToOtherProject(IPoint point, ISpatialReference pSpatialReference) { point.Project(pSpatialReference); return point; } } }
文章来源: https://blog.csdn.net/RicardoMTan/article/details/91433198