我在数据库中有一组GPS点。我最近试图只选择那些靠近我的位置的人。我可以用MySQL选择。我使用谷歌地图来显示它们。计算方向附近的最近GPS点MySQL
但是现在,我需要计算半径的最近点,比如说,围绕方向20公里 - 线段在两个gps点之间。
我把它画在一张图片上。我有两点A,B,我只需要显示他们之间的路径附近的点。
- 黄线是在红色区域
http://i.stack.imgur.com/9ZbUd.jpg
谢谢您的解决方案,我只想选择标记A和B
我在数据库中有一组GPS点。我最近试图只选择那些靠近我的位置的人。我可以用MySQL选择。我使用谷歌地图来显示它们。计算方向附近的最近GPS点MySQL
但是现在,我需要计算半径的最近点,比如说,围绕方向20公里 - 线段在两个gps点之间。
我把它画在一张图片上。我有两点A,B,我只需要显示他们之间的路径附近的点。
http://i.stack.imgur.com/9ZbUd.jpg
谢谢您的解决方案,我只想选择标记A和B
您需要球面三角函数来正确计算地球表面的距离。最好的方法是使用海鸟 - 参见http://www.movable-type.co.uk/scripts/latlong.html。
可以计算在以下网页使用的功能之一的距离:
Shortest distance between a point and a line segment
(如果没有MySQL的功能,您可以翻译一些在MySQL)
然后只是限制与您的搜索有这个距离的点不再那么你需要。
您的db中最多有多少这样的地理位置点?这些点只位于一个/两个国家,还是全世界? – AlexWien 2013-02-22 10:59:43