我有一系列Lat / Long坐标。我需要在X,Y坐标中对其进行变换。我读过UTM,但问题是UTM坐标是单个区域的亲戚。
例如,这两个坐标UTM具有相同的Easting(x)和Northing(y)但是代码区域不同,因此每个coords指向一个完全不同的位置(一个在西班牙,一个在意大利):
我需要一种方法来自动转换绝对X,Y坐标中的亲属坐标。想法?
答案 0 :(得分:1)
是否必须是UTM?如果没有,您还可以使用Mercator,这是一个不依赖于区域的简单投影。
例如,请参阅the Bing Maps system。
答案 1 :(得分:1)
您应该可以使用ProjNET库。 你需要的是找到定义你的投影的WKT(众所周知的文本),然后你应该能够在它们之间进行转换。
var utm33NCoordinateSystem = CoordinateSystemWktReader.Parse("WKT for correct utm zone") as IProjectedCoordinateSystem;
var wgs84CoordiateSystem = CoordinateSystemWktReader.Parse(MappingTransforms.WGS84) as IGeographicCoordinateSystem;
var ctfac = new CoordinateTransformationFactory();
_etrsToWgsTransformation = ctfac.CreateFromCoordinateSystems(etrs89CoordinateSystem,wgs84CoordiateSystem);
double[] transform = _etrsToWgsTransformation.MathTransform.Transform(new double[] { y,x });
注意:您必须找到正确的WKT,但可以在项目网站上找到。
此外,您可能必须按顺序翻转输入顺序。
答案 2 :(得分:1)
如果我们想纠正轴承和两点之间的距离比我们使用(极地)方法首先使用科学计算器按下按钮极性比首先开始括号 对于距离POL(N-N,E-E) 对于轴承POL(N-N,E-E)RclTan-1 现在你有一个正确的方位