我有这个坐标:778597.3125000001, 9148353
。有人告诉我这个坐标是Arc 1960 / UTM zone 36S
。
当我去这里并单击“获取地图上的位置”并输入上述坐标时,它将点放置在地图上的正确位置(在字段的角落)。
我必须做什么样的变换/投影才能使其经纬度,然后去谷歌地图中的同一点?
我尝试了各种方法,但似乎最终是400 - 200m
对角线偏移。
正确的经纬度应该是:(Lat: -7.699944 Long: 35.5262575
场地一角,见链接):
我正在使用 DotSpatial。
var Arc1960UTMZone36S = KnownCoordinateSystems.Projected.UtmOther.Arc1960UTMZone36S;
Arc1960UTMZone36S.AuthorityCode = 21036;
var WGS1984 = KnownCoordinateSystems.Geographic.World.WGS1984;
//4326 google earth
//3857 for google maps
WGS1984.AuthorityCode = 3857;
double[] xy = new double[2] { 778597.3125000001, 9148353 };
double[] z = new double[1] { 0d };
Reproject.ReprojectPoints(xy, z, Arc1960UTMZone36S, WGS1984, 0, 1);
var latitude = xy[1];
var longitude = xy[0];
Debug.WriteLine($"Lat: {latitude} Long: {longitude}");
有人知道它为什么会被抵消吗?