我有一个区域由左下角和右下角的坐标给出。然而,形成的区域不是正方形,因为圆的半径随着纬度的增加而减小。在我的情况下,当我使用前两个坐标和底部两个坐标计算距离时,有3-4公里的差异那么,我怎样才能得到一个方形区域。我不能假设由左侧角坐标和底部坐标限定的区域是方形的。我想要一个区域,其中顶部两个角的距离为x英里,而底部两个角的距离为x英里。建议?
答案 0 :(得分:2)
如果你没有达到超精确度(即WGS84和扁球体这个词对你来说没什么意义),那么只需要计算上纬度的经度/经度然后改变两者的经度。一点点,一点向东,一点向西。
大致是:
纬度:1度= 110.54公里
经度:1度= 111.320 * cos(纬度)km
答案 1 :(得分:1)
精确,球面上不能有方形区域。如果你纠正顶部2坐标的距离,那么“右”角度将不是90度,谁知道垂直边是否是直线!
谷歌地图投影自然为你提供了[lat,lon] 2D空间的平方,这对于大多数用途是正确的 - 我也在小空间尺度(400x200km)上使用这个11x11km正方形的地理“矩形”网格,没有任何问题。如果你忽视了微小的差异,你的生活将会轻松得多。如果你不这样做,我真的无法向你保证球面上精确矩形的问题,即使有任何解决方案!