return min_lon, min_lat, max_lon, max_lat
end
- def check_boundaries(min_lon, min_lat, max_lon, max_lat)
+ def check_boundaries(min_lon, min_lat, max_lon, max_lat, limit_small_area = :true)
# check the bbox is sane
unless min_lon <= max_lon
raise OSM::APIBadBoundingBox.new("The minimum longitude must be less than the maximum longitude, but it wasn't")
raise OSM::APIBadBoundingBox.new("The latitudes must be between -90 and 90, and longitudes between -180 and 180")
end
+ return unless limit_small_area == :true
+
# check the bbox isn't too large
requested_area = (max_lat-min_lat)*(max_lon-min_lon)
- if requested_area > APP_CONFIG['max_request_area']
- raise OSM::APIBadBoundingBox.new("The maximum bbox size is " + APP_CONFIG['max_request_area'].to_s +
+ if requested_area > MAX_REQUEST_AREA
+ raise OSM::APIBadBoundingBox.new("The maximum bbox size is " + MAX_REQUEST_AREA.to_s +
", and your request was too large. Either request a smaller area, or use planet.osm")
end
end