More trip planner testing with colors
[busui.git] / labs / openlayers / lib / OpenLayers / Geometry / Rectangle.js
blob:a/labs/openlayers/lib/OpenLayers/Geometry/Rectangle.js -> blob:b/labs/openlayers/lib/OpenLayers/Geometry/Rectangle.js
  /* Copyright (c) 2006-2010 by OpenLayers Contributors (see authors.txt for
  * full list of contributors). Published under the Clear BSD license.
  * See http://svn.openlayers.org/trunk/openlayers/license.txt for the
  * full text of the license. */
   
  /**
  * @requires OpenLayers/Geometry.js
  */
   
  /**
  * Class: OpenLayers.Geometry.Rectangle
  * This class is *not supported*, and probably isn't what you're looking for.
  * Instead, most users probably want something like:
  * (code)
  * var poly = new OpenLayers.Bounds(0,0,10,10).toGeometry();
  * (end)
  * This will create a rectangular Polygon geometry.
  *
  * Inherits:
  * - <OpenLayers.Geometry>
  */
   
  OpenLayers.Geometry.Rectangle = OpenLayers.Class(OpenLayers.Geometry, {
   
  /**
  * Property: x
  * {Float}
  */
  x: null,
   
  /**
  * Property: y
  * {Float}
  */
  y: null,
   
  /**
  * Property: width
  * {Float}
  */
  width: null,
   
  /**
  * Property: height
  * {Float}
  */
  height: null,
   
  /**
  * Constructor: OpenLayers.Geometry.Rectangle
  *
  * Parameters:
  * points - {Array(<OpenLayers.Geometry.Point>}
  */
  initialize: function(x, y, width, height) {
  OpenLayers.Geometry.prototype.initialize.apply(this, arguments);
   
  this.x = x;
  this.y = y;
   
  this.width = width;
  this.height = height;
  },
   
  /**
  * Method: calculateBounds
  * Recalculate the bounds for the geometry.
  */
  calculateBounds: function() {
  this.bounds = new OpenLayers.Bounds(this.x, this.y,
  this.x + this.width,
  this.y + this.height);
  },
   
   
  /**
  * APIMethod: getLength
  *
  * Returns:
  * {Float} The length of the geometry
  */
  getLength: function() {
  var length = (2 * this.width) + (2 * this.height);
  return length;
  },
   
  /**
  * APIMethod: getArea
  *
  * Returns:
  * {Float} The area of the geometry
  */
  getArea: function() {
  var area = this.width * this.height;
  return area;
  },
   
  CLASS_NAME: "OpenLayers.Geometry.Rectangle"
  });