三角测量GPS坐标

Mal*_*chi 5 math geometry gps

假设您有nGPS坐标,您如何计算它们之间的中心GPS点?

Dav*_*d Z 10

如果它现在或将来对任何人有帮助,这里的算法即使对于极点附近的点也是有效的(如果它完全有效,即如果我没有做出愚蠢的数学错误;-):

  1. 将纬度/经度坐标转换为3D笛卡尔坐标:

    x = cos(lat) * cos(lon)
    y = cos(lat) * sin(lon)
    z = sin(lat)
    
    Run Code Online (Sandbox Code Playgroud)
  2. 计算x的平均值,y的平均值和z的平均值:

    x_avg = sum(x) / count(x)
    y_avg = sum(y) / count(y)
    z_avg = sum(z) / count(z)
    
    Run Code Online (Sandbox Code Playgroud)
  3. 将该方向转换回纬度和经度:

    lat_avg = arctan(z_avg / sqrt(x_avg ** 2 + y_avg ** 2))
    lon_avg = arctan(y_avg / x_avg)
    
    Run Code Online (Sandbox Code Playgroud)