[bbox=-0.489,51.28,0.236,51.686]
来源:
http://wiki.openstreetmap.org/wiki/Bounding_Box
我怎样才能确认一个地点(纬度/经度)是否在城市限制范围内?
51.55238,0.047032
这方面是否已经有宝石可用?或者最好的方法是什么?
Bounty更新:
我有一个可行的解决方案,但感觉不太对,我使用了geocoder宝石,我的用户有geocoded_by和lat/long属性。所以这就是我如何做到的:
def self.user_from_dublin(user_id)
near([53.349937,-6.261917], 15).pluck(:id).include?(user_id)
end
这段代码加载了所有来自都柏林的用户,并将用户的ID与都柏林的用户进行比较。如果找到该ID,则认为该用户来自都柏林。
我认为当用户数量增加时,这种方法可能不太有效。
更新:
我正在使用Postgres数据库。
geocoder gem
的主页链接,并建议使用mongodb作为替代方案。 - bjhaid