Class: BlacklightMaps::Geometry::BoundingBox
- Inherits:
-
Object
- Object
- BlacklightMaps::Geometry::BoundingBox
- Defined in:
- lib/blacklight/maps/geometry.rb
Overview
This class contains Bounding Box objects and methods for interacting with them.
Class Method Summary collapse
-
.from_lon_lat_string(points) ⇒ Object
Creates a new bounding box from from a string of points “-100 -50 100 50” (south west north east).
Instance Method Summary collapse
-
#find_center ⇒ Object
Returns an array [lng, lat] which is the centerpoint of a BoundingBox.
-
#initialize(points) ⇒ BoundingBox
constructor
points is an array containing longitude and latitude values which relate to the southwest and northeast points of a bounding box [west, south, east, north] ([swlng, swlat, nelng, nelat]).
Constructor Details
#initialize(points) ⇒ BoundingBox
points is an array containing longitude and latitude values which relate to the southwest and northeast points of a bounding box
- west, south, east, north
-
([swlng, swlat, nelng, nelat]).
13 14 15 16 17 18 |
# File 'lib/blacklight/maps/geometry.rb', line 13 def initialize(points) @west = points[0].to_f @south = points[1].to_f @east = points[2].to_f @north = points[3].to_f end |
Class Method Details
.from_lon_lat_string(points) ⇒ Object
Creates a new bounding box from from a string of points “-100 -50 100 50” (south west north east)
34 35 36 |
# File 'lib/blacklight/maps/geometry.rb', line 34 def self.from_lon_lat_string(points) new(points.split(' ')) end |
Instance Method Details
#find_center ⇒ Object
Returns an array [lng, lat] which is the centerpoint of a BoundingBox.
21 22 23 24 25 26 27 28 29 30 |
# File 'lib/blacklight/maps/geometry.rb', line 21 def find_center center = [] center[0] = (@west + @east) / 2 center[1] = (@south + @north) / 2 # Handle bounding boxes that cross the dateline center[0] -= 180 if @west > @east center end |