C#ProgNET4GeoAPI库坐标转换

首先安装这个库

stPosition sourPt = new stPosition();
stPosition destPt = new stPosition();
 sourPt.X = SC.X;
 sourPt.Y = SC.Y;

BJ54PrjToGeo(38, 114, sourPt, out destPt);

函数

/// 

        /// 2000投影坐标转换为wgs84地理坐标
                /// 
                /// 带号
                /// 中央经线
                /// 原始投影坐标数据
                /// 转换后地理坐标  
        public static void BJ54PrjToGeo(int iCodeNum, double dCenter_Meridian, stPosition sourPt, out stPosition destPt)
        {
            destPt = new stPosition(0, 0);
            try
            {
                //高斯克吕格投影类型|横轴莫卡托投影类型
                string D_China_2000 = string.Format("PROJCS[\"hejl\","
                      + "GEOGCS[\"GCS_China_Geodetic_Coordinate_System_2000\","
                      + "DATUM[\"D_China_2000\", SPHEROID[\"CGCS2000\",  6378137.0, 298.257222101]],"
                      + "PRIMEM[\"Greenwich\", 0.0],"
                      + "UNIT[\"Degree\", 0.017453292519943]],"
                      + "PROJECTION[\"Transverse Mercator\"],"
                      + "PARAMETER[\"False_Easting\", {0}500000.0],"
                      + "PARAMETER[\"False_Northing\", 0.0],"
                      + "PARAMETER[\"Central_Meridian\", {1} ],"
                      + "PARAMETER[\"Scale_Factor\", 1],"
                      + "PARAMETER[\"Latitude_Of_Origin\", 0],"
                      + "UNIT[\"Meter\", 1]];", iCodeNum, dCenter_Meridian);
               
                IProjectedCoordinateSystem fromCS = CoordinateSystemWktReader.Parse(D_China_2000,Encoding.UTF8) as IProjectedCoordinateSystem;
                GeographicCoordinateSystem toCS = (GeographicCoordinateSystem)fromCS.GeographicCoordinateSystem;
                List pts = new List();
                double[] xy = new double[] { sourPt.X, sourPt.Y };
                pts.Add(xy);
                List results = new List();
                //执行转换函数
                MeterToDegree(fromCS, toCS, pts, out results);
                destPt.X = results[0][0];
                destPt.Y = results[0][1];
                //38535450.001,2976084.886  114.3568301651,26.8953514214 1.995903208524966,0.4694124357843669
                //114.35683016513332  26.895351421991617   1.995903208525547  0.4694124357946926
                //114.35683016513332  26.895351421991617   1.9959032085255415,0.4694124357816075
                //114.35683016513332  26.895351421991617
                //114.356830165133  26.8953514212419  102.01459817871236 38.408204515863723
                //37451432.456 4321506.811  110.43914372077828 39.025700375573919
                //114.36063370975924  26.831490547510775
            }
            catch (SystemException sysEx)
            {

            }
        }

你可能感兴趣的:(GIS)