地理定位和Haversine公式

我正在尝试创建一个基本的Web应用程序,它可以检测用户的地理位置,查询mySQL数据库,并返回5公里内的所有公交车站。 包含经度和纬度的GTFS提要已插入到mySQL数据库中,我找到了一个示例HTML页面,它提供了访问Web应用程序的浏览器的经度和纬度。 我正在寻找一些帮助编写mySQL查询,该查询获取此信息并返回结果。     
已邀请:
尽管大圆公式是精确的,但在这种情况下您不需要精度。一分钟的纬度约1英里(1.6公里)。经度的一分钟是cos(LAT)* 1英里。我会考虑选择LAT +/- 3分钟和LONG +/-(3 / cos(LAT))分钟。如果你真的需要一个圆圈,而不是一个盒子,那么只需假装它是欧几里德坐标。这种规模的误差小于总线的长度。 唯一棘手的部分是经度的一分钟长度取决于你离赤道有多远。     
在此链接中,您会发现: SELECT id,(3959 * acos(cos(弧度(37))* cos(弧度(lat))* cos(弧度(lng) - 弧度(-122))+ sin(弧度(37))* sin(弧度( lat))))AS距离FROM距离<标记距离< 25 ORDER BY距离LIMIT 0,20;     

要回复问题请先登录注册