ActionScript 3.0 Language and Components Reference | All Packages | All Classes | Language Elements | Index | Appendixes | Conventions | Frames No Frames |
Rectangle

Package | flash.geom
Class | public class Rectangle
Inheritance | Rectangle Object

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

View the examples

See also

flash.display.DisplayObject.scrollRect
flash.display.BitmapData
flash.display.DisplayObject
flash.text.TextField.getCharBoundaries()
flash.geom.Transform.pixelBounds
flash.display.Sprite.startDrag()
flash.printing.PrintJob.addPage()
Using Rectangle objects
Setting size, scale, and orientation

Public Properties
Hide Inherited Public Properties
Show Inherited Public Properties

| Property | Defined By
--- | --- | ---
|  | bottom : Number The sum of the y and height properties. | Rectangle
|  | bottomRight : Point The location of the Rectangle object's bottom-right corner, determined by the values of the right and bottom properties. | Rectangle
|  | constructor : Object A reference to the class object or constructor function for a given object instance. | Object
|  | height : Number The height of the rectangle, in pixels. | Rectangle
|  | left : Number The x coordinate of the top-left corner of the rectangle. | Rectangle
|  | prototype : Object [static] A reference to the prototype object of a class or function object. | Object
|  | right : Number The sum of the x and width properties. | Rectangle
|  | size : Point The size of the Rectangle object, expressed as a Point object with the values of the width and height properties. | Rectangle
|  | top : Number The y coordinate of the top-left corner of the rectangle. | Rectangle
|  | topLeft : Point The location of the Rectangle object's top-left corner, determined by the x and y coordinates of the point. | Rectangle
|  | width : Number The width of the rectangle, in pixels. | Rectangle
|  | x : Number The x coordinate of the top-left corner of the rectangle. | Rectangle
|  | y : Number The y coordinate of the top-left corner of the rectangle. | Rectangle

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | Rectangle(x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0) 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. | Rectangle
|  | clone():Rectangle Returns a new Rectangle object with the same values for the x, y, width, and height properties as the original Rectangle object. | Rectangle
|  | contains(x:Number, y:Number):Boolean Determines whether the specified point is contained within the rectangular region defined by this Rectangle object. | Rectangle
|  | containsPoint(point:Point):Boolean Determines whether the specified point is contained within the rectangular region defined by this Rectangle object. | Rectangle
|  | containsRect(rect:Rectangle):Boolean Determines whether the Rectangle object specified by the rect parameter is contained within this Rectangle object. | Rectangle
|  | equals(toCompare:Rectangle):Boolean Determines whether the object specified in the toCompare parameter is equal to this Rectangle object. | Rectangle
|  | hasOwnProperty(name:String):Boolean Indicates whether an object has a specified property defined. | Object
|  | inflate(dx:Number, dy:Number):void Increases the size of the Rectangle object by the specified amounts, in pixels. | Rectangle
|  | inflatePoint(point:Point):void Increases the size of the Rectangle object. | Rectangle
|  | 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. | Rectangle
|  | intersects(toIntersect:Rectangle):Boolean Determines whether the object specified in the toIntersect parameter intersects with this Rectangle object. | Rectangle
|  | isEmpty():Boolean Determines whether or not this Rectangle object is empty. | Rectangle
|  | isPrototypeOf(theClass:Object):Boolean Indicates whether an instance of the Object class is in the prototype chain of the object specified as the parameter. | Object
|  | offset(dx:Number, dy:Number):void Adjusts the location of the Rectangle object, as determined by its top-left corner, by the specified amounts. | Rectangle
|  | offsetPoint(point:Point):void Adjusts the location of the Rectangle object using a Point object as a parameter. | Rectangle
|  | propertyIsEnumerable(name:String):Boolean Indicates whether the specified property exists and is enumerable. | Object
|  | setEmpty():void Sets all of the Rectangle object's properties to 0. | Rectangle
|  | setPropertyIsEnumerable(name:String, isEnum:Boolean = true):void Sets the availability of a dynamic property for loop operations. | Object
|  | toString():String Builds and returns a string that lists the horizontal and vertical positions and the width and height of the Rectangle object. | Rectangle
|  | 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. | Rectangle
|  | valueOf():Object Returns the primitive value of the specified object. | Object

Property Detail

bottom | property

`bottom:Number` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

The sum of the `y` and `height` properties.

Implementation
`public function get bottom():Number`
`public function set bottom(value:Number):void`

See also

y
height
Using Rectangle objects

bottomRight | property |

`bottomRight:Point` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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

Implementation
`public function get bottomRight():Point`
`public function set bottomRight(value:Point):void`

See also

flash.geom.Point

height | property |

`public var height:Number`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

See also

x
y
height
Using Rectangle objects

left | property |

`left:Number` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Implementation
`public function get left():Number`
`public function set left(value:Number):void`

See also

x
y
width
height
Using Rectangle objects

right | property |

`right:Number` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

The sum of the `x` and `width` properties.

Implementation
`public function get right():Number`
`public function set right(value:Number):void`

See also

x
width
Using Rectangle objects

size | property |

`size:Point` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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

Implementation
`public function get size():Point`
`public function set size(value:Point):void`

See also

flash.geom.Point

top | property |

`top:Number` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Implementation
`public function get top():Number`
`public function set top(value:Number):void`

See also

x
y
width
height
Using Rectangle objects

topLeft | property |

`topLeft:Point` [read-write]

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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

Implementation
`public function get topLeft():Point`
`public function set topLeft(value:Point):void`

See also

flash.geom.Point
x
y

width | property |

`public var width:Number`

Player Version : | Flash Player 9

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.

See also

x
y
height
Using Rectangle objects

x | property |

`public var x:Number`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

See also

left
Using Rectangle objects

y | property |

`public var y:Number`

Player Version : | Flash Player 9

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.

See also

x
width
height
top
Using Rectangle objects
Constructor Detail

Rectangle | () | Constructor

`public function Rectangle(x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0)`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Parameters

| `x:Number` (default = `0`)`` — The x coordinate of the top-left corner of the rectangle.
| `y:Number` (default = `0`)`` — The y coordinate of the top-left corner of the rectangle.
| `width:Number` (default = `0`)`` — The width of the rectangle, in pixels.
| `height:Number` (default = `0`)`` — The height of the rectangle, in pixels.

See also

x
y
width
height
Method Detail

clone | () | method

`public function clone():Rectangle`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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

Returns

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

See also

x
y
width
height

contains | () | method |

`public function contains(x:Number, y:Number):Boolean`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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

Parameters

| `x:Number` — The x coordinate (horizontal position) of the point.
| `y:Number` — The y coordinate (vertical position) of the point.

Returns

| `Boolean` — A value of `true` if the Rectangle object contains the specified point; otherwise `false`.

See also

flash.geom.Point

containsPoint | () | method |

`public function containsPoint(point:Point):Boolean`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Parameters

| `point:Point` — The point, as represented by its x and y coordinates.

Returns

| `Boolean` — A value of `true` if the Rectangle object contains the specified point; otherwise `false`.

See also

contains()
flash.geom.Point

containsRect | () | method |

`public function containsRect(rect:Rectangle):Boolean`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Parameters

| `rect:Rectangle` — The Rectangle object being checked.

Returns

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

equals | () | method |

`public function equals(toCompare:Rectangle):Boolean`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Parameters

| `toCompare:Rectangle` — The rectangle to compare to this Rectangle object.

Returns

| `Boolean` — 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`.

See also

x
y
width
height

inflate | () | method |

`public function inflate(dx:Number, dy:Number):void`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Parameters

| `dx:Number` — 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:
     x -= dx;
     width += 2 * dx;
| `dy:Number` — 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:
     y -= dy;
     height += 2 * dy;

See also

x
y
Using Rectangle objects

inflatePoint | () | method |

`public function inflatePoint(point:Point):void`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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:

      rect1=new flash.geom.Rectangle(0,0,2,5);
      rect1.inflate(2,2)

      rect1=new flash.geom.Rectangle(0,0,2,5);
      pt1=new flash.geom.Point(2,2);
      rect1.inflatePoint(pt1)

Parameters

| `point: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.

See also

flash.geom.Point
Using Rectangle objects

intersection | () | method |

`public function intersection(toIntersect:Rectangle):Rectangle`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Parameters

| `toIntersect:Rectangle` — The Rectangle object to compare against to see if it intersects with this Rectangle object.

Returns

| `Rectangle` — 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.

See also

Using Rectangle objects

intersects | () | method |

`public function intersects(toIntersect:Rectangle):Boolean`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Parameters

| `toIntersect:Rectangle` — The Rectangle object to compare against this Rectangle object.

Returns

| `Boolean` — A value of `true` if the specified object intersects with this Rectangle object; otherwise `false`.

See also

x
y
width
height
Using Rectangle objects

isEmpty | () | method |

`public function isEmpty():Boolean`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

Determines whether or not this Rectangle object is empty.

Returns

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

offset | () | method |

`public function offset(dx:Number, dy:Number):void`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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

Parameters

| `dx:Number` — Moves the x value of the Rectangle object by this amount.
| `dy:Number` — Moves the y value of the Rectangle object by this amount.

See also

Using Rectangle objects

offsetPoint | () | method |

`public function offsetPoint(point:Point):void`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

Parameters

| `point:Point` — A Point object to use to offset this Rectangle object.

See also

flash.geom.Point
Using Rectangle objects

setEmpty | () | method |

`public function setEmpty():void`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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.

See also

x
y
width
height

toString | () | method |

`public function toString():String`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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

Returns

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

See also

x
y
width
height

union | () | method |

`public function union(toUnion:Rectangle):Rectangle`

Language Version : | ActionScript 3.0

Player Version : | Flash Player 9

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

Parameters

| `toUnion:Rectangle` — A Rectangle object to add to this Rectangle object.

Returns

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

See also

Using Rectangle objects
Examples How to use examples
RectangleExample.as
The following example uses the RectangleExample class to create three new Rectangle objects at various x,y coordinates and with various heights and widths and then uses the `trace()` method to confirm that the Rectangle instances were successfully created. Then a Boolean variable `isContained` is assigned to the result of the call to the `containsRect()` method, which determines that the second rectangle does not fully enclose the third rectangle.

    package {
        import flash.display.Sprite;
        import flash.geom.Rectangle;

        public class RectangleExample extends Sprite {

            public function RectangleExample() {
                var firstRect:Rectangle = new Rectangle();
                trace(firstRect);  // (x=0, y=0, w=0, h=0)
                var secondRect:Rectangle = new Rectangle(1, 3, 11, 13);
                trace(secondRect); // (x=1, y=3, w=11, h=13)
                var thirdRect:Rectangle = new Rectangle(5, 8, 17, 19);
                trace(thirdRect);  // (x=5, y=8, w=17, h=19)
                var isContained:Boolean = secondRect.containsRect(thirdRect);
                trace(isContained); // false
            }
        }
    }

Submit Feedback on LiveDocs
© 2004-2008 Adobe Systems Incorporated. All rights reserved.
Tue May 20 2008, 04:02 AM -07:00