如何根据特定纬度/经度计算出纽约市附近地铁入口的距离?

时间:2016-09-30 21:41:26

标签: ruby-on-rails postgresql api google-maps geolocation

我尝试过使用google places API,使用类型subway_station进行附近的位置搜索,然后返回附近的位置。但问题是(a)它们没有被标记,例如作为A列车和(b)附近的地铁站不一定是这些车站的入口,因此测量可以关闭多达几百英尺。

我发现这个数据集有地铁入口,标记正确,等等: https://nycopendata.socrata.com/Transportation/Subway-Entrances/drex-xx56/data

所以现在我只想确定在Rails / Postgres环境中利用这些数据的最佳方法。我应该导出数据并根据它创建模型,然后使用location aware database queries还是去另一条路线?

我主要是一名前端开发人员,这不是我的强项所以任何建议都会受到赞赏。

1 个答案:

答案 0 :(得分:2)

  

我应该导出数据并根据它创建模型,然后使用位置感知数据库查询还是转到其他路径?

基本上是的。

对于“位置感知数据库查询”,Postgres有一个名为PostGIS的空间扩展。

因此,您需要从Subway Entrances导出数据,在数据库中创建几何,然后使用ST_DistanceSphere等方法运行查询