Rails Geocoder MapIt功能替代品

时间:2013-11-15 02:23:56

标签: ruby-on-rails google-maps geocoding gmaps4rails rails-geocoder

我正在使用rails,geocoder和gmap4rails。试图弄清楚如何显示英国区病区的边界。找到mapit - Mapit by mySociaty。如果有人可以建议或指出我在rails中创建类似功能的方向,那将是惊人的。我对mapit.mysociety.org网站上显示的“触摸此区域”等功能特别感兴趣。

Google地图还会显示某个区域的边界,例如google map example显示“Roath”区域的边界。无论如何从谷歌检索数据? 我还用地理编码器测试了很多地址,在google中查找。尝试从地址administrative_area_level_1 2和3以及地点或sublocality的地理编码。 结果非常不可靠。从birmigham市尝试了至少20个地址 - 只有部分地址返回了administrative_area_level1,2,3或地点或sublocality,大部分时间都是错误的数据。

另一个在城市中显示病房区域的网站是www.streetlife.com我认为它只适用于英国用户。基本上它需要一个用户的邮政编码,然后在他们的地图中显示用户区和周围的其他区域,这是非常酷:)有谁知道它是如何工作的?或者如何获得像在铁轨上工作的东西?

我真的很想更深入地讨论这个话题并找出最佳答案。

1 个答案:

答案 0 :(得分:0)

如果您想使用rails,

This question at gis.stackexchange可能对您有用。 "触摸"功能基本上是一个PostGIS查询,因此您可以构建在允许您对PostgreSQL数据库进行SQL查询的任何内容之上 - GeoDjango(构建MapIt)使这很好,但您可以在rails中完成相同的工作

我相信,您无法获得您在Google地图中看到的那些边界,因为它是专有的。

地理编码是一个单独的主题 - 您可能希望查看OpenStreetMap NominatimMapQuest有版本)或GeoNames之类的内容,它们可以为您提供数据集可以与地理编码器一起使用 - 军械测量局也发布可能有用的GB datasets