如何以度/弧度转换纬度和经度? 你们有任何公式或任何想法吗? 我想在MapKit上显示它。 感谢.....
答案 0 :(得分:63)
由于纬度和经度是以度为单位度量的,因此您可以使用以下公式转换为弧度,然后返回到度数:
Radians = Degrees * PI / 180
反过来,
Degrees = Radians * 180 / PI
答案 1 :(得分:16)
如果你像地球一样看地球,经度和纬度已经以度为单位给出。经度表示为-180度(-pi弧度)至180度(pi弧度),0度以本初子午线为中心。相对于赤道,纬度表示为-90度(-pi / 2弧度)至90度(pi / 2弧度)。这已经是一个球面坐标系(取决于我在下面给出的注意事项),地球半径约为6371 km。
所以只需通过乘以pi / 180进行转换,就像在任何正常意义上将度数转换为弧度一样。如果你想使用这些弧度来做一些具体的事情,比如计算两个纬度/经度之间的距离,那么你应该看一些预先存在的sources。
以前曾提出类似的问题,即Convert Lat-Lon to Cartesian Coordinates。
一般来说,许多转换问题的“正确”答案取决于您的答案中可接受的错误(距离为20英里可能会偏离1英里等)并且世界模型是合适的在您的问题域中。世界更好地用椭圆体(压扁的球体)而不是球体来近似,但是假设地球是球体并且引入的误差可以是最小的,则更容易执行计算。特别是如果你的程序只是在寻找那些不会用于工程项目的“粗略”答案。
你所拥有的纬度很可能是在一个名为WGS-84的坐标系中给出的,这是大多数硬件GPS装置使用的,它假设是一个椭圆体模型。
请注意,我有更多的来源,但我想我的声誉很低,所以我只能发布两个链接。我建议在维基百科上阅读关于WGS-84,地球半径,球面坐标,本初子午线和赤道的一些视觉参考。