如何找到围绕某个位置 5 英里半径的一组纬度/经度对

Posted

技术标签:

【中文标题】如何找到围绕某个位置 5 英里半径的一组纬度/经度对【英文标题】:How to find a set of lat/long pairs surrounding a 5 miles radius of a certain location 【发布时间】:2012-11-15 22:45:32 【问题描述】:

如何找到一组以纬度/经度或地址表示的特定位置半径 5 英里范围内的纬度/经度对。

【问题讨论】:

你所说的一组纬度/经度对是什么意思,是指围绕特定位置的每个纬度还是某些纬度/经度对 其中一些会更可取,但在我指定的半径范围内(比如重要的地标或城市周围的纬度/经度) ***.com/questions/5031268/… 这可能会有所帮助 你想要一些坐标来围绕一个以纬度/经度和半径为米的中心点构建一个圆或一个矩形吗? 建立一个圆圈的坐标,但绝对在圆圈内。 【参考方案1】:

首先,您决定要拥有多少 (lat,lon) 对: 您可能希望有 4 个坐标围绕中心点形成一个正方形。 或者您决定在中心点周围放置一个常规的 N-Gon。

然后您使用从纬度/经度到米的投影,例如 EquiDistantProjetion。

这允许您将纬度/经度中心转换为笛卡尔米, 然后,您可以像在学校学到的一样计算。

现在你有了笛卡尔米的中心点: 然后您使用坐标 (r, phi) 的极坐标形式来计算正方形或 N 边形的角点。 (centerX + r* sin(phi), centerY + r* cos(phi))。

最后,您必须使用逆变换将坐标对转换回纬度/经度。

EquiDistantProjection 适用于最长约 100 英里的距离。 它在纬度 80 度以上不能很好地工作。 (极地)

【讨论】:

以上是关于如何找到围绕某个位置 5 英里半径的一组纬度/经度对的主要内容,如果未能解决你的问题,请参考以下文章

在地图上围绕纬度/经度绘制时间半径

给定 GPS 的地理位置,如何在给定的 x 米半径内找到纬度和经度

从给定位置(经度、纬度)的 Y 半径内查找 X 的所有值

python:使用纬度和经度查找提供位置半径内的位置的优雅方法

PHP MySql 和地理位置

MySQL计算纬度和经度半径[重复]