关于纬度/经度计算的快速问题。

我想使用一个值集纬度:55.123456长-6.123456,计算出任意距离的四个点。

作为给定的正方形,我想计算左侧和右侧的“纬度”值。因此,红线距离起点1.5公里。同样,对于经度来说,蓝线距起点的距离为1.5公里。输出将是4点,所有距离以公里为单位。

简而言之:纬度+ Y =纬度值X公里

目前正在与iPhone配合使用,并进行了非常粗略的数据库计算。

编辑:只是为了澄清,距离是如此之短,以至于曲率(以及准确性)就不成问题了。

最佳答案

在OBJ-C中,这应该是一个不错的解决方案:

float r_earth = 6378 * 1000; //Work in meters for everything
float dy = 3000; //A point 3km away
float dx = 3000; //A point 3km away
float new_latitude  = latitude  + (dy / r_earth) * (180 / M_PI);
float new_longitude = longitude + (dx / r_earth) * (180 / M_PI) / cos(latitude * 180/M_PI);

10-01 18:43
查看更多