egret.Rectangle
包 egret
类 public class Rectangle
继承 egret.Rectangle → egret.HashObject
Rectangle 对象是按其位置(由它左上角的点 (x, y) 确定)以及宽度和高度定义的区域。
Rectangle 类的 x、y、width 和 height 属性相互独立;更改一个属性的值不会影响其他属性。但是,right 和 bottom 属性与这四个属性是整体相关的。例如,如果更改 right 属性的值,则 width属性的值将发生变化;如果更改 bottom 属性,则 height 属性的值将发生变化。
公共属性
属性 |
---|
bottom : number y 和 height 属性的和 |
bottomRight : egret.Point 由 right 和 bottom 属性的值确定的 Rectangle 对象的右下角的位置 |
height : number The height of the rectangle, in pixels. |
left : number 矩形左上角的 x 坐标 |
right : number x 和 width 属性的和 |
top : number 矩形左上角的 y 坐标 |
topLeft : egret.Point 由该点的 x 和 y 坐标确定的 Rectangle 对象左上角的位置 |
width : number 矩形的宽度(以像素为单位) |
x : number 矩形左上角的 x 坐标 |
y : number 矩形左上角的 y 坐标 |
公共方法
方法 |
---|
Rectangle(x:number,y:number,width:number,height:number) 创建一个新 Rectangle 对象,其左上角由 x 和 y 参数指定,并具有指定的 width 和 height 参数 |
clone():egret.Rectangle 返回一个新的 Rectangle 对象,其 x、y、width 和 height 属性的值与原始 Rectangle 对象的对应值相同 |
contains(x:number,y:number):boolean 确定由此 Rectangle 对象定义的矩形区域内是否包含指定的点 |
containsPoint(point:egret.Point):boolean 确定由此 Rectangle 对象定义的矩形区域内是否包含指定的点 |
containsRect(rect:egret.Rectangle):boolean 确定此 Rectangle 对象内是否包含由 rect 参数指定的 Rectangle 对象 |
copyFrom(sourceRect:egret.Rectangle):egret.Rectangle 将源 Rectangle 对象中的所有矩形数据复制到调用方 Rectangle 对象中 |
create():egret.Rectangle [静态]从对象池中取出或创建一个新的Rectangle对象 |
equals(toCompare:egret.Rectangle):boolean 确定在 toCompare 参数中指定的对象是否等于此 Rectangle 对象 |
inflate(dx:number,dy:number):void 按指定量增加 Rectangle 对象的大小(以像素为单位)保持 Rectangle 对象的中心点不变,使用 dx 值横向增加它的大小,使用 dy 值纵向增加它的大小 |
inflatePoint(point:egret.Point):void 增加 Rectangle 对象的大小 |
intersection(toIntersect:egret.Rectangle):egret.Rectangle 如果在 toIntersect 参数中指定的 Rectangle 对象与此 Rectangle 对象相交,则返回交集区域作为 Rectangle 对象 |
intersects(toIntersect:egret.Rectangle):boolean 确定在 toIntersect 参数中指定的对象是否与此 Rectangle 对象相交 |
isEmpty():boolean 确定此 Rectangle 对象是否为空 |
offset(dx:number,dy:number):void 按指定量调整 Rectangle 对象的位置(由其左上角确定) |
offsetPoint(point:egret.Point):void 将 Point 对象用作参数来调整 Rectangle 对象的位置 |
release(rect:egret.Rectangle):void [静态]释放一个Rectangle实例到对象池 |
setEmpty():void 将 Rectangle 对象的所有属性设置为 0 |
setTo(x:number,y:number,width:number,height:number):egret.Rectangle 将 Rectangle 的成员设置为指定值 |
union(toUnion:egret.Rectangle):egret.Rectangle 通过填充两个矩形之间的水平和垂直空间,将这两个矩形组合在一起以创建一个新的 Rectangle 对象 |
属性详细信息
bottom
bottom : number
- 支持版本:Egret 2.4
- 运行平台:Web,Native
y 和 height 属性的和。
bottomRight
bottomRight : egret.Point
- 支持版本:Egret 2.4
- 运行平台:Web,Native
由 right 和 bottom 属性的值确定的 Rectangle 对象的右下角的位置。
height
height : number = 0
- 支持版本:Egret 2.4
- 运行平台:Web,Native
The height of the rectangle, in pixels.
left
left : number
- 支持版本:Egret 2.4
- 运行平台:Web,Native
矩形左上角的 x 坐标。更改 Rectangle 对象的 left 属性对 y 和 height 属性没有影响。但是,它会影响 width 属性,而更改 x 值不会影响 width 属性。left 属性的值等于 x 属性的值。
right
right : number
- 支持版本:Egret 2.4
- 运行平台:Web,Native
x 和 width 属性的和。
top
top : number
- 支持版本:Egret 2.4
- 运行平台:Web,Native
矩形左上角的 y 坐标。更改 Rectangle 对象的 top 属性对 x 和 width 属性没有影响。但是,它会影响 height 属性,而更改 y 值不会影响 height 属性。
top 属性的值等于 y 属性的值。
topLeft
topLeft : egret.Point
- 支持版本:Egret 2.4
- 运行平台:Web,Native
由该点的 x 和 y 坐标确定的 Rectangle 对象左上角的位置。
width
width : number = 0
- 支持版本:Egret 2.4
- 运行平台:Web,Native
矩形的宽度(以像素为单位)。
x
x : number = 0
- 支持版本:Egret 2.4
- 运行平台:Web,Native
矩形左上角的 x 坐标。
y
y : number = 0
- 支持版本:Egret 2.4
- 运行平台:Web,Native
矩形左上角的 y 坐标。
方法详细信息
Rectangle()
public Rectangle(x:number,y:number,width:number,height:number)
创建一个新 Rectangle 对象,其左上角由 x 和 y 参数指定,并具有指定的 width 和 height 参数。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 参数
clone()
public clone():egret.Rectangle
返回一个新的 Rectangle 对象,其 x、y、width 和 height 属性的值与原始 Rectangle 对象的对应值相同。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 返回:新的 Rectangle 对象,其 x、y、width 和 height 属性的值与原始 Rectangle 对象的对应值相同。
contains()
public contains(x:number,y:number):boolean
确定由此 Rectangle 对象定义的矩形区域内是否包含指定的点。
containsPoint()
public containsPoint(point:egret.Point):boolean
确定由此 Rectangle 对象定义的矩形区域内是否包含指定的点。此方法与 Rectangle.contains() 方法类似,只不过它采用 Point 对象作为参数。
支持版本:Egret 2.4
运行平台:Web,Native
参数
- point:egret.Point - 包含点对象
返回:如果包含,返回true,否则返回false
containsRect()
public containsRect(rect:egret.Rectangle):boolean
确定此 Rectangle 对象内是否包含由 rect 参数指定的 Rectangle 对象。如果一个 Rectangle 对象完全在另一个 Rectangle 的边界内,我们说第二个 Rectangle 包含第一个 Rectangle。
支持版本:Egret 2.4
运行平台:Web,Native
参数
- rect:egret.Rectangle - 所检查的 Rectangle 对象
返回:如果此 Rectangle 对象包含您指定的 Rectangle 对象,则返回 true 值,否则返回 false。
copyFrom()
public copyFrom(sourceRect:egret.Rectangle):egret.Rectangle
将源 Rectangle 对象中的所有矩形数据复制到调用方 Rectangle 对象中。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 参数
- sourceRect:egret.Rectangle - 要从中复制数据的 Rectangle 对象。
create()
public create():egret.Rectangle
从对象池中取出或创建一个新的Rectangle对象。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
equals()
public equals(toCompare:egret.Rectangle):boolean
确定在 toCompare 参数中指定的对象是否等于此 Rectangle 对象。此方法将某个对象的 x、y、width 和 height 属性与此 Rectangle 对象所对应的相同属性进行比较。
支持版本:Egret 2.4
运行平台:Web,Native
参数
- toCompare:egret.Rectangle - 要与此 Rectangle 对象进行比较的矩形。
返回:如果对象具有与此 Rectangle 对象完全相同的 x、y、width 和 height 属性值,则返回 true 值,否则返回 false。
inflate()
public inflate(dx:number,dy:number):void
按指定量增加 Rectangle 对象的大小(以像素为单位)保持 Rectangle 对象的中心点不变,使用 dx 值横向增加它的大小,使用 dy 值纵向增加它的大小。
inflatePoint()
public inflatePoint(point:egret.Point):void
增加 Rectangle 对象的大小。此方法与 Rectangle.inflate() 方法类似,只不过它采用 Point 对象作为参数。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 参数
- point:egret.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.
intersection()
public intersection(toIntersect:egret.Rectangle):egret.Rectangle
如果在 toIntersect 参数中指定的 Rectangle 对象与此 Rectangle 对象相交,则返回交集区域作为 Rectangle 对象。如果矩形不相交,则此方法返回一个空的 Rectangle 对象,其属性设置为 0。
支持版本:Egret 2.4
运行平台:Web,Native
参数
- toIntersect:egret.Rectangle - 要对照比较以查看其是否与此 Rectangle 对象相交的 Rectangle 对象。
返回:等于交集区域的 Rectangle 对象。如果该矩形不相交,则此方法返回一个空的 Rectangle 对象;即,其 x、y、width 和height 属性均设置为 0 的矩形。
intersects()
public intersects(toIntersect:egret.Rectangle):boolean
确定在 toIntersect 参数中指定的对象是否与此 Rectangle 对象相交。此方法检查指定的 Rectangle对象的 x、y、width 和 height 属性,以查看它是否与此 Rectangle 对象相交。
支持版本:Egret 2.4
运行平台:Web,Native
参数
- toIntersect:egret.Rectangle - 要与此 Rectangle 对象比较的 Rectangle 对象。
返回:如果两个矩形相交,返回true,否则返回false
isEmpty()
public isEmpty():boolean
确定此 Rectangle 对象是否为空。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 返回:如果 Rectangle 对象的宽度或高度小于等于 0,则返回 true 值,否则返回 false。
offset()
public offset(dx:number,dy:number):void
按指定量调整 Rectangle 对象的位置(由其左上角确定)。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 参数
offsetPoint()
public offsetPoint(point:egret.Point):void
将 Point 对象用作参数来调整 Rectangle 对象的位置。此方法与 Rectangle.offset() 方法类似,只不过它采用 Point 对象作为参数。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 参数
- point:egret.Point - 要用于偏移此 Rectangle 对象的 Point 对象。
release()
public release(rect:egret.Rectangle):void
释放一个Rectangle实例到对象池
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 参数
- rect:egret.Rectangle
setEmpty()
public setEmpty():void
将 Rectangle 对象的所有属性设置为 0。
- 支持版本:Egret 2.4
- 运行平台:Web,Native
setTo()
public setTo(x:number,y:number,width:number,height:number):egret.Rectangle
将 Rectangle 的成员设置为指定值
- 支持版本:Egret 2.4
- 运行平台:Web,Native
- 参数
union()
public union(toUnion:egret.Rectangle):egret.Rectangle
通过填充两个矩形之间的水平和垂直空间,将这两个矩形组合在一起以创建一个新的 Rectangle 对象。
支持版本:Egret 2.4
运行平台:Web,Native
参数
- toUnion:egret.Rectangle - 要添加到此 Rectangle 对象的 Rectangle 对象。
返回:充当两个矩形的联合的新 Rectangle 对象。
示例
/*
* 以下示例使用 RectangleExample 类创建新 Rectangle 对象,然后使用 egret.log() 方法输出各种类方法的结果。
*/
class RectangleExample extends egret.DisplayObjectContainer {
public constructor() {
super();
var firstRect:egret.Rectangle = new egret.Rectangle();
egret.log(firstRect.toString()); // (x=0, y=0, w=0, h=0)
var secondRect:egret.Rectangle = new egret.Rectangle(1, 3, 11, 13);
egret.log(secondRect.toString()); // (x=1, y=3, w=11, h=13)
var thirdRect:egret.Rectangle = new egret.Rectangle(5, 8, 17, 19);
egret.log(thirdRect.toString()); // (x=5, y=8, w=17, h=19)
var isContained:Boolean = secondRect.containsRect(thirdRect);
egret.log(isContained); // false
}
}