我需要逆时针对一个矩形的坐标列表进行排序,并将东北角设为第一个坐标。这些是十进制形式的地理坐标(即经度、纬度)。1
例如,这里是一个矩形的 4 个角,从西北角开始顺时针移动:
[
{ "lat": 34.495239, "lng": -118.127747 }, # north-west
{ "lat": 34.495239, "lng": -117.147217 }, # north-east
{ "lat": 34.095174, "lng": -117.147217 }, # south-east
{ "lat": 34.095174, "lng": -118.127747 } # south-west
]
我需要对这些逆时针排序并将“锚”/起点更改为东北:
[
{ "lat": 34.495239, "lng": -117.147217 }, # north-east
{ "lat": 34.495239, "lng": -118.127747 }, # north-west
{ "lat": 34.095174, "lng": -118.127747 }, # south-west
{ "lat": 34.095174, "lng": -117.147217 } # south-east
]
我不知道列表最初的顺序是什么(即顺时针或逆时针)。我不知道列表中的第一个坐标代表哪个角。
1当映射到地球表面时,这不是一个真正的矩形,但是由于我确实有 2 个相对的角,我将其称为矩形以提高可读性。包裹 +180/-180 经度或 +90/-90 纬度的形状不是问题。