flash.geom
public class Rectangle
继承Rectangle Inheritance Object
子类 RoundedRectangle

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

Rectangle 对象是按其位置(由它左上角的点 (x, y) 确定)以及宽度和高度定义的区域。

Rectangle 类的 xywidthheight 属性相互独立;更改一个属性的值不会影响其它属性。但是,rightbottom 属性与这四个属性是整体相关的。例如,如果更改 right 属性的值,则 width 属性的值将发生变化;如果更改 bottom 属性,则 height 属性的值将发生变化。

以下方法和属性使用 Rectangle 对象:

您可以使用 new Rectangle() 构造函数创建 Rectangle 对象。

注意:Rectangle 类不定义矩形 Shape 显示对象。若要在屏幕上绘制矩形 Shape 对象,请使用 Graphics 类的 drawRect() 方法。

查看示例

另请参见

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


公共属性
 属性定义方
  bottom : Number
y 和 height 属性的和。
Rectangle
  bottomRight : Point
由 right 和 bottom 属性的值确定的 Rectangle 对象的右下角的位置。
Rectangle
 Inheritedconstructor : Object
对类对象或给定对象实例的构造函数的引用。
Object
  height : Number
矩形的高度(以像素为单位)。
Rectangle
  left : Number
矩形左上角的 x 坐标。
Rectangle
 Inheritedprototype : Object
[静态] 对类或函数对象的原型对象的引用。
Object
  right : Number
x 和 width 属性的和。
Rectangle
  size : Point
Rectangle 对象的大小,该对象表示为具有 width 和 height 属性的值的 Point 对象。
Rectangle
  top : Number
矩形左上角的 y 坐标。
Rectangle
  topLeft : Point
由该点的 x 和 y 坐标确定的 Rectangle 对象左上角的位置。
Rectangle
  width : Number
矩形的宽度(以像素为单位)。
Rectangle
  x : Number
矩形左上角的 x 坐标。
Rectangle
  y : Number
矩形左上角的 y 坐标。
Rectangle
公共方法
 方法定义方
  
Rectangle(x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0)
创建一个新 Rectangle 对象,其左上角由 x 和 y 参数指定,并具有指定的 width 和 height 参数。
Rectangle
  
返回一个新的 Rectangle 对象,其 x、y、width 和 height 属性的值与原始 Rectangle 对象的对应值相同。
Rectangle
  
确定由此 Rectangle 对象定义的矩形区域内是否包含指定的点。
Rectangle
  
确定由此 Rectangle 对象定义的矩形区域内是否包含指定的点。
Rectangle
  
确定此 Rectangle 对象内是否包含由 rect 参数指定的 Rectangle 对象。
Rectangle
  
确定在 toCompare 参数中指定的对象是否等于此 Rectangle 对象。
Rectangle
 Inherited
指示对象是否已经定义了指定的属性。
Object
  
按指定量增加 Rectangle 对象的大小(以像素为单位)。
Rectangle
  
增加 Rectangle 对象的大小。
Rectangle
  
如果在 toIntersect 参数中指定的 Rectangle 对象与此 Rectangle 对象相交,则返回交集区域作为 Rectangle 对象。
Rectangle
  
确定在 toIntersect 参数中指定的对象是否与此 Rectangle 对象相交。
Rectangle
  
确定此 Rectangle 对象是否为空。
Rectangle
 Inherited
指示 Object 类的实例是否在指定为参数的对象的原型链中。
Object
  
按指定量调整 Rectangle 对象的位置(由其左上角确定)。
Rectangle
  
将 Point 对象用作参数来调整 Rectangle 对象的位置。
Rectangle
 Inherited
指示指定的属性是否存在、是否可枚举。
Object
  
将 Rectangle 对象的所有属性设置为 0。
Rectangle
 Inherited
设置循环操作动态属性的可用性。
Object
  
生成并返回一个字符串,该字符串列出 Rectangle 对象的水平位置和垂直位置以及高度和宽度。
Rectangle
  
通过填充两个矩形之间的水平和垂直空间,将这两个矩形组合在一起以创建一个新的 Rectangle 对象。
Rectangle
 Inherited
返回指定对象的原始值。
Object
属性详细信息
bottom属性
bottom:Number  [读写]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

yheight 属性的和。

显示 location 和 measurement 属性的矩形图像。



实现
    public function get bottom():Number
    public function set bottom(value:Number):void

另请参见

bottomRight属性 
bottomRight:Point  [读写]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

rightbottom 属性的值确定的 Rectangle 对象的右下角的位置。

显示 location 和 measurement 属性的矩形图像。



实现
    public function get bottomRight():Point
    public function set bottomRight(value:Point):void

另请参见

height属性 
public var height:Number

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

矩形的高度(以像素为单位)。更改 Rectangle 对象的 height 值对 xywidth 属性没有影响。

显示 location 和 measurement 属性的矩形图像。

另请参见

left属性 
left:Number  [读写]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

矩形左上角的 x 坐标。更改 Rectangle 对象的 left 属性对 yheight 属性没有影响。但是,它会影响 width 属性,而更改 x不会影响 width 属性。

left 属性的值等于 x 属性的值。

显示 location 和 measurement 属性的矩形图像。



实现
    public function get left():Number
    public function set left(value:Number):void

另请参见

right属性 
right:Number  [读写]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

xwidth 属性的和。

显示 location 和 measurement 属性的矩形图像。



实现
    public function get right():Number
    public function set right(value:Number):void

另请参见

size属性 
size:Point  [读写]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

Rectangle 对象的大小,该对象表示为具有 widthheight 属性的值的 Point 对象。



实现
    public function get size():Point
    public function set size(value:Point):void

另请参见

top属性 
top:Number  [读写]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

矩形左上角的 y 坐标。更改 Rectangle 对象的 top 属性对 xwidth 属性没有影响。但是,它会影响 height 属性,而更改 y不会影响 height 属性。

top 属性的值等于 y 属性的值。

显示 location 和 measurement 属性的矩形图像。



实现
    public function get top():Number
    public function set top(value:Number):void

另请参见

topLeft属性 
topLeft:Point  [读写]

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

由该点的 xy 坐标确定的 Rectangle 对象左上角的位置。

显示 location 和 measurement 属性的矩形图像。



实现
    public function get topLeft():Point
    public function set topLeft(value:Point):void

另请参见

width属性 
public var width:Number

运行时版本: AIR 1.0 Flash Player 9

矩形的宽度(以像素为单位)。更改 Rectangle 对象的 width 值对 xyheight 属性没有影响。

显示 location 和 measurement 属性的矩形图像。

另请参见

x属性 
public var x:Number

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

矩形左上角的 x 坐标。更改 Rectangle 对象的 x 属性的值对 ywidthheight 属性没有影响。

x 属性的值等于 left 属性的值。

另请参见

y属性 
public var y:Number

运行时版本: AIR 1.0 Flash Player 9

矩形左上角的 y 坐标。更改 Rectangle 对象的 y 属性的值对 xwidthheight 属性没有影响。

y 属性的值等于 top 属性的值。

另请参见

构造函数详细信息
Rectangle()构造函数
public function Rectangle(x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0)

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

创建一个新 Rectangle 对象,其左上角由 xy 参数指定,并具有指定的 widthheight 参数。如果调用此函数时不使用任何参数,将创建一个 xywidthheight 属性均设置为 0 的矩形。

参数
x:Number (default = 0) — 矩形左上角的 x 坐标。
 
y:Number (default = 0) — 矩形左上角的 y 坐标。
 
width:Number (default = 0) — 矩形的宽度(以像素为单位)。
 
height:Number (default = 0) — 矩形的高度(以像素为单位)。

另请参见

方法详细信息
clone()方法
public function clone():Rectangle

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

返回一个新的 Rectangle 对象,其 xywidthheight 属性的值与原始 Rectangle 对象的对应值相同。

返回
Rectangle — 新的 Rectangle 对象,其 xywidthheight 属性的值与原始 Rectangle 对象的对应值相同。

另请参见

contains()方法 
public function contains(x:Number, y:Number):Boolean

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

确定由此 Rectangle 对象定义的矩形区域内是否包含指定的点。

参数

x:Number — 点的 x 坐标(水平位置)。
 
y:Number — 点的 y 坐标(垂直位置)。

返回
Boolean — 如果 Rectangle 对象包含指定的点,则值为 true;否则为 false

另请参见

containsPoint()方法 
public function containsPoint(point:Point):Boolean

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

确定由此 Rectangle 对象定义的矩形区域内是否包含指定的点。此方法与 Rectangle.contains() 方法类似,只不过它采用 Point 对象作为参数。

参数

point:Point — 用其 xy 坐标表示的点。

返回
Boolean — 如果 Rectangle 对象包含指定的点,则值为 true;否则为 false

另请参见

containsRect()方法 
public function containsRect(rect:Rectangle):Boolean

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

确定此 Rectangle 对象内是否包含由 rect 参数指定的 Rectangle 对象。如果一个 Rectangle 对象完全在另一个 Rectangle 的边界内,我们说第二个 Rectangle 包含第一个 Rectangle。

参数

rect:Rectangle — 所检查的 Rectangle 对象。

返回
Boolean — 如果此 Rectangle 对象包含您指定的 Rectangle 对象,则返回 true 值,否则返回 false
equals()方法 
public function equals(toCompare:Rectangle):Boolean

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

确定在 toCompare 参数中指定的对象是否等于此 Rectangle 对象。此方法将某个对象的 xywidthheight 属性与此 Rectangle 对象所对应的相同属性进行比较。

参数

toCompare:Rectangle — 要与此 Rectangle 对象进行比较的矩形。

返回
Boolean — 如果对象具有与此 Rectangle 对象完全相同的 xywidthheight 属性值,则返回 true 值,否则返回 false

另请参见

inflate()方法 
public function inflate(dx:Number, dy:Number):void

语言版本: ActionScript 3.0
运行时版本: Flash Player 9, Flash Player 9

按指定量增加 Rectangle 对象的大小(以像素为单位)。保持 Rectangle 对象的中心点不变,使用 dx 值横向增加它的大小,使用 dy 值纵向增加它的大小。

参数

dx:Number — Rectangle 对象横向增加的值。下列等式用于计算矩形的新宽度和位置:
x -= dx;
 width += 2 * dx;
 
dy:Number — Rectangle 纵向增加的值。下列等式用于计算矩形的新高度和位置:
y -= dy;
 height += 2 * dy;

另请参见

inflatePoint()方法 
public function inflatePoint(point:Point):void

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

增加 Rectangle 对象的大小。此方法与 Rectangle.inflate() 方法类似,只不过它采用 Point 对象作为参数。

下面的两个代码示例产生相同的结果:

var rect1:Rectangle = new Rectangle(0,0,2,5);
  rect1.inflate(2,2)
var rect1:Rectangle = new Rectangle(0,0,2,5);
  var pt1:Point = new Point(2,2);
  rect1.inflatePoint(pt1)
var rect1 = new air.Rectangle(0,0,2,5);
  rect1.inflate(2,2)
var rect1 = new air.Rectangle(0,0,2,5);
  var pt1 = new air.Point(2,2);
  rect1.inflatePoint(pt1)

参数

point:Point — 此 Point 对象的 x 属性用于增加 Rectangle 对象的水平尺寸。y 属性用于增加 Rectangle 对象的垂直尺寸。

另请参见

intersection()方法 
public function intersection(toIntersect:Rectangle):Rectangle

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

如果在 toIntersect 参数中指定的 Rectangle 对象与此 Rectangle 对象相交,则返回交集区域作为 Rectangle 对象。如果矩形不相交,则此方法返回一个空的 Rectangle 对象,其属性设置为 0。

生成的相交矩形。

参数

toIntersect:Rectangle — 要对照比较以查看其是否与此 Rectangle 对象相交的 Rectangle 对象。

返回
Rectangle — 等于交集区域的 Rectangle 对象。如果该矩形不相交,则此方法返回一个空的 Rectangle 对象;即,其 xywidthheight 属性均设置为 0 的矩形。

另请参见

intersects()方法 
public function intersects(toIntersect:Rectangle):Boolean

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

确定在 toIntersect 参数中指定的对象是否与此 Rectangle 对象相交。此方法检查指定的 Rectangle 对象的 xywidthheight 属性,以查看它是否与此 Rectangle 对象相交。

参数

toIntersect:Rectangle — 要与此 Rectangle 对象比较的 Rectangle 对象。

返回
Boolean — 如果指定的对象与此 Rectangle 对象相交,则返回 true 值,否则返回 false

另请参见

isEmpty()方法 
public function isEmpty():Boolean

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

确定此 Rectangle 对象是否为空。

返回
Boolean — 如果 Rectangle 对象的宽度或高度小于等于 0,则返回 true 值,否则返回 false
offset()方法 
public function offset(dx:Number, dy:Number):void

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

按指定量调整 Rectangle 对象的位置(由其左上角确定)。

参数

dx:Number — 将 Rectangle 对象的 x 值移动此数量。
 
dy:Number — 将 Rectangle 对象的 y 值移动此数量。

另请参见

offsetPoint()方法 
public function offsetPoint(point:Point):void

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

将 Point 对象用作参数来调整 Rectangle 对象的位置。此方法与 Rectangle.offset() 方法类似,只不过它采用 Point 对象作为参数。

参数

point:Point — 要用于偏移此 Rectangle 对象的 Point 对象。

另请参见

setEmpty()方法 
public function setEmpty():void

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

将 Rectangle 对象的所有属性设置为 0。如果 Rectangle 对象的宽度或高度小于或等于 0,则该对象为空。

此方法将 xywidthheight 属性设置为 0。

另请参见

toString()方法 
public function toString():String

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

生成并返回一个字符串,该字符串列出 Rectangle 对象的水平位置和垂直位置以及高度和宽度。

返回
String — 一个字符串,它列出了 Rectangle 对象的下列各个属性的值:xywidthheight

另请参见

union()方法 
public function union(toUnion:Rectangle):Rectangle

语言版本: ActionScript 3.0
运行时版本: AIR 1.0 Flash Player 9

通过填充两个矩形之间的水平和垂直空间,将这两个矩形组合在一起以创建一个新的 Rectangle 对象。

生成的联合矩形。

参数

toUnion:Rectangle — 要添加到此 Rectangle 对象的 Rectangle 对象。

返回
Rectangle — 充当两个矩形的联合的新 Rectangle 对象。

另请参见

示例 如何使用示例
RectangleExample.as

下面的示例使用 RectangleExample 类以不同的高度和宽度在不同的 x , y 坐标处创建三个新的 Rectangle 对象,随后使用 trace() 方法确认是否成功创建了 Rectangle 实例。然后将布尔变量 isContained 赋予对 containsRect() 方法的调用结果,该方法确定第二个矩形未完全包含第三个矩形。
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
        }
    }
}