X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/40e920bd52619f549ff829296865f87f89f2fd2a..0348316d0b2da528b9f529a9a3de900f419730ed:/lib/osm.rb diff --git a/lib/osm.rb b/lib/osm.rb index 5be2da56a..789a5f439 100644 --- a/lib/osm.rb +++ b/lib/osm.rb @@ -334,6 +334,11 @@ module OSM maxlon = (@lon + lonradius) * 180 / PI return { :minlat => minlat, :maxlat => maxlat, :minlon => minlon, :maxlon => maxlon } end + + # get the SQL to use to calculate distance + def sql_for_distance(lat_field, lon_field) + "6372.795 * 2 * asin(sqrt(power(sin((radians(#{lat_field}) - #{@lat}) / 2), 2) + cos(#{@lat}) * cos(radians(#{lat_field})) * power(sin((radians(#{lon_field}) - #{@lon})/2), 2)))" + end end class GeoRSS