1.最终效果
-
纬度 (lat) = 30.0°
-
经度 (lon) = 120.0°
-
高度 (alt) = 1000.0 米
-
z 3170873.735344176 p 5529122.664706394 lat_rad 0.5235987755982988
(np.float64(-2764561.3323531956), np.float64(4788360.688276047), np.float64(3170873.735344176))
z 3170873.735344176 p 5529122.664706394 lat_rad 0.5206956282667523
(np.float64(29.833661910597716), np.float64(119.99999999999999), np.float64(33130.30484911706))
-2764561.332348309 4788360.688267583 3170873.735383638
(np.float64(29.999999999999996), np.float64(119.99999999999999), np.float64(1000.0000000001294))有一定的问题:原因是纬度不是纯粹的arccos(r/p)
2.理论和代码
2.1.将[经度,纬度,高度]转换为[x,y,z]
1. 转换步骤
a. 确定参考椭球体
地球是一个近似的椭球体,常用的参考椭球体是WGS-84(全球定位系统使用的标准)。椭球体的参数包括:
-
长半轴 a:约 6378137 米(赤道半径)。
-
短半轴 b:约 6356752.3142 米(极半径)。
-
扁率 f:
。
b. 从地理坐标转换到笛卡尔坐标
假设 [经度,纬度,高度] 是相对于WGS-84椭球体的坐标,转换公式如下:
1.计算曲率半径 N(ϕ):