OpenLayers. Bounds

Instances of this class represent bounding boxes.  Data stored as left, bottom, right, top floats.  All values are initialized to null, however, you should make sure you set them before using the bounds for anything.

Possible use case

bounds = new OpenLayers.Bounds();
bounds.extend(new OpenLayers.LonLat(4,5));
bounds.extend(new OpenLayers.LonLat(5,6));
bounds.toBBOX(); // returns 4,5,5,6
Summary
Instances of this class represent bounding boxes.
Construct a new bounds object.
{String} String representation of bounds object.
{Array} array of left, bottom, right, top
{Float} The width of the bounds
{Float} The height of the bounds (top minus bottom).
{OpenLayers.Size} The size of the box.
{OpenLayers.Pixel} The center of the bounds in pixel space.
{OpenLayers.LonLat} The center of the bounds in map space.
Extend the bounds to include the point, lonlat, or bounds specified.
Alternative constructor that builds a new OpenLayers.Bounds from a parameter string
Alternative constructor that builds a new OpenLayers.Bounds from an array
Alternative constructor that builds a new OpenLayers.Bounds from a size

Constructor

OpenLayers. Bounds

Construct a new bounds object.

Parameters

left{Number} The left bounds of the box.  Note that for width calculations, this is assumed to be less than the right value.
bottom{Number} The bottom bounds of the box.  Note that for height calculations, this is assumed to be more than the top value.
right{Number} The right bounds.
top{Number} The top bounds.

Functions

toString

toString:function()

Returns

{String} String representation of bounds object.  (ex.<i>”left-bottom=(5,42) right-top=(10,45)”</i>)

toArray

toArray: function()

Returns

{Array} array of left, bottom, right, top

toBBOX

toBBOX:function(decimal)

Parameters

decimal{Integer} How many significant digits in the bbox coords?  Default is 6

Returns

{String} Simple String representation of bounds object.  (ex.  <i>”5,42,10,45”</i>)

getWidth

getWidth:function()

Returns

{Float} The width of the bounds

getHeight

getHeight:function()

Returns

{Float} The height of the bounds (top minus bottom).

getSize

getSize:function()

Returns

{OpenLayers.Size} The size of the box.

getCenterPixel

getCenterPixel:function()

Returns

{OpenLayers.Pixel} The center of the bounds in pixel space.

getCenterLonLat

getCenterLonLat:function()

Returns

{OpenLayers.LonLat} The center of the bounds in map space.

add

add:function(x,
y)

Parameters

x{Float}
y{Float}

Returns

{OpenLayers.Bounds} A new bounds whose coordinates are the same as this, but shifted by the passed-in x and y values.

extend

extend:function(object)

Extend the bounds to include the point, lonlat, or bounds specified.  Note, this function assumes that left < right and bottom < top.

Parameters

object{Object} Can be LonLat, Point, or Bounds

containsLonLat

containsLonLat:function(ll,
inclusive)

Parameters

ll{OpenLayers.LonLat}
inclusive{Boolean} Whether or not to include the border.  Default is true.

Returns

{Boolean} The passed-in lonlat is within this bounds.

containsPixel

containsPixel:function(px,
inclusive)

Parameters

px{OpenLayers.Pixel}
inclusive{Boolean} Whether or not to include the border.  Default is true.

Returns

{Boolean} The passed-in pixel is within this bounds.

contains

contains:function(x,
y,
inclusive)

Parameters

x{Float}
y{Float}
inclusive{Boolean} Whether or not to include the border.  Default is true.

Returns

{Boolean} Whether or not the passed-in coordinates are within this bounds.

intersectsBounds

intersectsBounds:function(bounds,
inclusive)

Parameters

bounds{OpenLayers.Bounds}
inclusive{<Boolean>} Whether or not to include the border.  Default is true.

Returns

{Boolean} The passed-in OpenLayers.Bounds object intersects this bounds.  Simple math just check if either contains the other, allowing for partial.

containsBounds

containsBounds:function(bounds,
partial,
inclusive)
bounds{OpenLayers.Bounds}
partial{<Boolean>} If true, only part of passed-in bounds needs be within this bounds.  If false, the entire passed-in bounds must be within.  Default is false
inclusive{<Boolean>} Whether or not to include the border.  Default is true.

Returns

{Boolean} The passed-in bounds object is contained within this bounds.

determineQuadrant

determineQuadrant: function(lonlat)

Parameters

lonlat{OpenLayers.LonLat}

Returns

{String} The quadrant (“br” “tr” “tl” “bl”) of the bounds in which the coordinate lies.

wrapDateLine

wrapDateLine: function(maxExtent,
options)

Parameters

maxExtent{OpenLayers.Bounds}
options{Object} Some possible options are:
leftTolerance{float} Allow for a margin of error with the ‘left’ value of this bound.  Default is 0.
rightTolerance{float} Allow for a margin of error with the ‘right’ value of this bound.  Default is 0.

Returns

{OpenLayers.Bounds} A copy of this bounds, but wrapped around the “dateline” (as specified by the borders of maxExtent).  Note that this function only returns a different bounds value if this bounds is entirely outside of the maxExtent.  If this bounds straddles the dateline (is part in/part out of maxExtent), the returned bounds will be merely a copy of this one.

fromString

OpenLayers.Bounds.fromString = function(str)

Alternative constructor that builds a new OpenLayers.Bounds from a parameter string

Parameters

str{String}Comma-separated bounds string.  (ex.  <i>”5,42,10,45”</i>)

Returns

{OpenLayers.Bounds} New bounds object built from the passed-in String.

fromArray

OpenLayers.Bounds.fromArray = function(bbox)

Alternative constructor that builds a new OpenLayers.Bounds from an array

Parameters

bbox{Array(Float)} Array of bounds values (ex.  <i>[5,42,10,45]</i>)

Returns

{OpenLayers.Bounds} New bounds object built from the passed-in Array.

fromSize

OpenLayers.Bounds.fromSize = function(size)

Alternative constructor that builds a new OpenLayers.Bounds from a size

Parameters

size{OpenLayers.Size}

Returns

{OpenLayers.Bounds} New bounds object built from the passed-in size.

toString:function()
{String} String representation of bounds object.
toArray: function()
{Array} array of left, bottom, right, top
toBBOX:function(decimal)
getWidth:function()
{Float} The width of the bounds
getHeight:function()
{Float} The height of the bounds (top minus bottom).
getSize:function()
{OpenLayers.Size} The size of the box.
Instances of this class represent a width/height pair
getCenterPixel:function()
{OpenLayers.Pixel} The center of the bounds in pixel space.
This class represents a screen coordinate, in x and y coordinates
getCenterLonLat:function()
{OpenLayers.LonLat} The center of the bounds in map space.
This class represents a longitude and latitude pair
add:function(x,
y)
extend:function(object)
Extend the bounds to include the point, lonlat, or bounds specified.
containsLonLat:function(ll,
inclusive)
containsPixel:function(px,
inclusive)
contains:function(x,
y,
inclusive)
intersectsBounds:function(bounds,
inclusive)
containsBounds:function(bounds,
partial,
inclusive)
determineQuadrant: function(lonlat)
wrapDateLine: function(maxExtent,
options)
OpenLayers.Bounds.fromString = function(str)
Alternative constructor that builds a new OpenLayers.Bounds from a parameter string
OpenLayers.Bounds.fromArray = function(bbox)
Alternative constructor that builds a new OpenLayers.Bounds from an array
OpenLayers.Bounds.fromSize = function(size)
Alternative constructor that builds a new OpenLayers.Bounds from a size
Construct a new bounds object.