class flash.geom.Rectangle

Available on all platforms

A Rectangle object is an area defined by its position, as indicated by its * top-left corner point(x, y) and by its width and its height. *

The x, y, width, and * height properties of the Rectangle class are independent of * each other; changing the value of one property has no effect on the others. * However, the right and bottom properties are * integrally related to those four properties. For example, if you change the * value of the right property, the value of the * width property changes; if you change the bottom * property, the value of the height property changes.

*

The following methods and properties use Rectangle objects:

*
    *
  • The applyFilter(), colorTransform(), * copyChannel(), copyPixels(), draw(), * fillRect(), generateFilterRect(), * getColorBoundsRect(), getPixels(), * merge(), paletteMap(), * pixelDisolve(), setPixels(), and * threshold() methods, and the rect property of the * BitmapData class
  • *
  • The getBounds() and getRect() methods, and * the scrollRect and scale9Grid properties of the * DisplayObject class
  • *
  • The getCharBoundaries() method of the TextField * class
  • *
  • The pixelBounds property of the Transform class
  • *
  • The bounds parameter for the startDrag() * method of the Sprite class
  • *
  • The printArea parameter of the addPage() * method of the PrintJob class
  • *
*

You can use the new Rectangle() constructor to create a * Rectangle object.

*

Note: The Rectangle class does not define a rectangular Shape * display object. To draw a rectangular Shape object onscreen, use the * drawRect() method of the Graphics class.

Instance Fields

var bottom:Float

The sum of the y and height properties.

var bottomRight:Point

The location of the Rectangle object's bottom-right corner, determined by * the values of the right and bottom properties.

var height:Float

The height of the rectangle, in pixels. Changing the height * value of a Rectangle object has no effect on the x, * y, and width properties.

var left:Float

The x coordinate of the top-left corner of the rectangle. Changing * the left property of a Rectangle object has no effect on the * y and height properties. However it does affect * the width property, whereas changing the x value * does not affect the width property. * *

The value of the left property is equal to the value of * the x property.

var right:Float

The sum of the x and width properties.

var size:Point

The size of the Rectangle object, expressed as a Point object with the * values of the width and height properties.

var top:Float

The y coordinate of the top-left corner of the rectangle. Changing * the top property of a Rectangle object has no effect on the * x and width properties. However it does affect * the height property, whereas changing the y * value does not affect the height property. * *

The value of the top property is equal to the value of the * y property.

var topLeft:Point

The location of the Rectangle object's top-left corner, determined by the * x and y coordinates of the point.

var width:Float

The width of the rectangle, in pixels. Changing the width * value of a Rectangle object has no effect on the x, * y, and height properties.

var x:Float

The x coordinate of the top-left corner of the rectangle. Changing * the value of the x property of a Rectangle object has no * effect on the y, width, and height * properties. * *

The value of the x property is equal to the value of the * left property.

var y:Float

The y coordinate of the top-left corner of the rectangle. Changing * the value of the y property of a Rectangle object has no * effect on the x, width, and height * properties. * *

The value of the y property is equal to the value of the * top property.

function new(?x:Float, ?y:Float, ?width:Float, ?height:Float):Void

Creates a new Rectangle object with the top-left corner specified by the * x and y parameters and with the specified * width and height parameters. If you call this * function without parameters, a rectangle with x, * y, width, and height properties set * to 0 is created. * *

x

The x coordinate of the top-left corner of the * rectangle. *

y

The y coordinate of the top-left corner of the * rectangle. *

width

The width of the rectangle, in pixels. *

height

The height of the rectangle, in pixels.

function clone():Rectangle

Returns a new Rectangle object with the same values for the * x, y, width, and * height properties as the original Rectangle object. * *

returns

A new Rectangle object with the same values for the x, y, width, and height properties as the original Rectangle object.

function contains(x:Float, y:Float):Bool

Determines whether the specified point is contained within the rectangular * region defined by this Rectangle object. * *

x

The x coordinate(horizontal position) of the point. *

y

The y coordinate(vertical position) of the point. *

returns

A value of true if the Rectangle object contains the * specified point; otherwise false.

function containsPoint(point:Point):Bool

Determines whether the specified point is contained within the rectangular * region defined by this Rectangle object. This method is similar to the * Rectangle.contains() method, except that it takes a Point * object as a parameter. * *

point

The point, as represented by its x and y coordinates.

returns

A value of true if the Rectangle object contains the * specified point; otherwise false.

function containsRect(rect:Rectangle):Bool

Determines whether the Rectangle object specified by the rect * parameter is contained within this Rectangle object. A Rectangle object is * said to contain another if the second Rectangle object falls entirely * within the boundaries of the first. * *

rect

The Rectangle object being checked. *

returns

A value of true if the Rectangle object that you specify is contained by this Rectangle object; otherwise false.

function copyFrom(sourceRect:Rectangle):Void

function equals(toCompare:Rectangle):Bool

Determines whether the object specified in the toCompare * parameter is equal to this Rectangle object. This method compares the * x, y, width, and * height properties of an object against the same properties of * this Rectangle object. * *

toCompare

The rectangle to compare to this Rectangle object. *

returns

A value of true if the object has exactly the same values for the x, y, width, and height properties as this Rectangle object; * otherwise false.

function inflate(dx:Float, dy:Float):Void

Increases the size of the Rectangle object by the specified amounts, in * pixels. The center point of the Rectangle object stays the same, and its * size increases to the left and right by the dx value, and to * the top and the bottom by the dy value. * *

dx

The value to be added to the left and the right of the Rectangle object. The following equation is used to calculate the new width and position of the rectangle: *

dy

The value to be added to the top and the bottom of the Rectangle. The following equation is used to calculate the new height and position of the rectangle:

function inflatePoint(point:Point):Void

Increases the size of the Rectangle object. This method is similar to the * Rectangle.inflate() method except it takes a Point object as * a parameter. * *

The following two code examples give the same result:

* *

point

The x property of this Point object is used to increase the horizontal dimension of the Rectangle object. The y property is used to increase the vertical * dimension of the Rectangle object.

function intersection(toIntersect:Rectangle):Rectangle

If the Rectangle object specified in the toIntersect * parameter intersects with this Rectangle object, returns the area of * intersection as a Rectangle object. If the rectangles do not intersect, * this method returns an empty Rectangle object with its properties set to * 0. * *

toIntersect

The Rectangle object to compare against to see if it intersects with this Rectangle object.

returns

A Rectangle object that equals the area of intersection. If the rectangles do not intersect, this method returns an empty Rectangle object; that is, a rectangle with its x, y, width, and height properties set to 0.

function intersects(toIntersect:Rectangle):Bool

Determines whether the object specified in the toIntersect * parameter intersects with this Rectangle object. This method checks the * x, y, width, and * height properties of the specified Rectangle object to see if * it intersects with this Rectangle object. * *

toIntersect

The Rectangle object to compare against this Rectangle object.

returns

A value of true if the specified object intersects * with this Rectangle object; otherwise false.

function isEmpty():Bool

Determines whether or not this Rectangle object is empty. * *

returns

A value of true if the Rectangle object's width or * height is less than or equal to 0; otherwise false.

function offset(dx:Float, dy:Float):Void

Adjusts the location of the Rectangle object, as determined by its * top-left corner, by the specified amounts. * *

dx

Moves the x value of the Rectangle object by this amount. *

dy

Moves the y value of the Rectangle object by this amount.

function offsetPoint(point:Point):Void

Adjusts the location of the Rectangle object using a Point object as a * parameter. This method is similar to the Rectangle.offset() * method, except that it takes a Point object as a parameter. * *

point

A Point object to use to offset this Rectangle object.

function setEmpty():Void

Sets all of the Rectangle object's properties to 0. A Rectangle object is * empty if its width or height is less than or equal to 0. * *

This method sets the values of the x, y, * width, and height properties to 0.

function setTo(xa:Float, ya:Float, widtha:Float, heighta:Float):Void

function toString():String

Builds and returns a string that lists the horizontal and vertical * positions and the width and height of the Rectangle object. * *

returns

A string listing the value of each of the following properties of the Rectangle object: x, y, width, and height.

function union(toUnion:Rectangle):Rectangle

Adds two rectangles together to create a new Rectangle object, by filling * in the horizontal and vertical space between the two rectangles. * *

Note: The union() method ignores rectangles with * 0 as the height or width value, such as: var * rect2:Rectangle = new Rectangle(300,300,50,0);

* *

toUnion

A Rectangle object to add to this Rectangle object. *

returns

A new Rectangle object that is the union of the two rectangles.