Math 掌握地理信息系统数学,从哪里开始?

Math 掌握地理信息系统数学,从哪里开始?,math,gis,topology,wgs84,utm,Math,Gis,Topology,Wgs84,Utm,我负责一个程序,该程序用于创建一组节点和路径,供自主地面车辆使用。该程序通过将项目的位置指示为0,0原点以北x米和以东y米,来跟踪其地图中所有项目的位置。在现实世界中,车辆知道原点的lat和long的位置,因为它由dgps系统确定,精确到几厘米。我的程序不知道任何lat-long坐标 我的目标之一是修改程序,除了原点和项目相对于该原点的x、y位置外,还跟踪项目的横向坐标。乍一看,我似乎要修改程序,以允许传入原点的lat-long坐标,然后我希望程序将自动计算地图中当前每个项目的lat-long。

我负责一个程序,该程序用于创建一组节点和路径,供自主地面车辆使用。该程序通过将项目的位置指示为0,0原点以北x米和以东y米,来跟踪其地图中所有项目的位置。在现实世界中,车辆知道原点的lat和long的位置,因为它由dgps系统确定,精确到几厘米。我的程序不知道任何lat-long坐标

我的目标之一是修改程序,除了原点和项目相对于该原点的x、y位置外,还跟踪项目的横向坐标。乍一看,我似乎要修改程序,以允许传入原点的lat-long坐标,然后我希望程序将自动计算地图中当前每个项目的lat-long。根据我迄今为止的研究,我相信我需要找出从UTM类投影转换为lat-long坐标背后的数学原理,在该投影中,我指定原点和子午线等,而不是为UTM定义的任何东西

我来问你们GIS程序员,我走对了吗?在我看来,有太多的事情要绕着一个人的头,我不确定答案是否像“哦,是的,这里有一个从米到长的转换”

目前,由于DGPS的性质,系统真的不需要关心的位置比哦,什么。。。40公里?远离原点的半径。考虑到这一点,以及我需要确保坐标上的误差不大于.5米的事实,我需要比简单的lat/long-to-meters转换常数更复杂的东西吗

我对这里的材料已经有膝盖深了。我可以使用一些关于研究什么概念的指针


多谢

对于40km的范围,您可能会发现将世界近似为2D平面可能会起作用,尽管UTM变换将是理想的方法-在任何情况下,我主张使用实际WGS84坐标和椭球体进行计算,如大圆距离或计算方位


如果你觉得无聊,你可以做一个类似于我一直在研究的东西,它可以用作不同基准的基类,比如OSGB36或WGS84…

如果可以的话,我会做一个完整的计算。这样,您将始终尽可能准确


如果你恰巧使用C++,则是一个很好的库。

给定LAT/Lon中的一个起点和一个距离和方位,找到终点是一个测地线计算。上面有一个关于测地线计算和误差的总结。他们得出结论,使用球形模型可以得到点间距离的结果,误差最大为0.51%。这一点,再加上要在“LLA到ECEF”和“ECEF到LLA”部分之间转换的公式,似乎可以满足您的需要

如果您想通过将平面地图反向投影到WGS-84来确定错误,那么有一个投影软件包。它有源代码,并附带三个命令行实用程序-
proj
,用于转换地图投影和笛卡尔数据;
cs2cs
,用于在不同的卡通图之间转换hic投影;以及计算测地线关系的
测地线


美国地质调查局发布了一个。

既然您提到了UTM转换,您的意思是将我的原点定位在lat-long,然后找到我的原点所在的UTM区域(并将我的所有项目x、y转换为真实的UTM xy)?或者你的意思是制作我自己的伪utm区域,其原点是我的原点并从那里开始?我在想转换为utm的x,y-如果需要,你可以调整为一个伪原点以供你使用。谢谢你的参考,我会研究它!它将是准确的,也可能更容易实现。只需挂入一个好的库。