|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.awt.geom.RectangularShape java.awt.geom.Rectangle2D
public abstract class Rectangle2D
Rectangle2D
类描述通过位置 (x, y) 和尺寸 (w x h) 定义的矩形。
此类是所有存储 2D 矩形对象的惟一抽象超类。坐标的实际存储表示形式要靠子类来完成。
嵌套类摘要 | |
---|---|
static class |
Rectangle2D.Double
Double 类定义以 double 坐标指定的矩形。 |
static class |
Rectangle2D.Float
Float 类定义以 float 坐标指定的矩形。 |
字段摘要 | |
---|---|
static int |
OUT_BOTTOM
指示点位于此 Rectangle2D 下方的位掩码。 |
static int |
OUT_LEFT
指示点位于此 Rectangle2D 左边的位掩码。 |
static int |
OUT_RIGHT
指示点位于此 Rectangle2D 右边的位掩码。 |
static int |
OUT_TOP
指示点位于此 Rectangle2D 上方的位掩码。 |
构造方法摘要 | |
---|---|
protected |
Rectangle2D()
这是一个不可直接实例化的抽象类。 |
方法摘要 | |
---|---|
void |
add(double newx,
double newy)
将由 double 精度参数 newx 和 newy 指定的点添加到此 Rectangle2D 中。 |
void |
add(Point2D pt)
将 Point2D 对象 pt 添加到此 Rectangle2D 中。 |
void |
add(Rectangle2D r)
将 Rectangle2D 对象添加到此 Rectangle2D 中。 |
boolean |
contains(double x,
double y)
测试指定点是否在此 Rectangle2D 对象的边界内。 |
boolean |
contains(double x,
double y,
double w,
double h)
测试此 Rectangle2D 的内部是否完全包含指定矩形坐标集。 |
abstract Rectangle2D |
createIntersection(Rectangle2D r)
返回一个新的 Rectangle2D 对象,它表示此 Rectangle2D 与指定 Rectangle2D 的交集。 |
abstract Rectangle2D |
createUnion(Rectangle2D r)
返回一个新的 Rectangle2D 对象,它表示此 Rectangle2D 与指定 Rectangle2D 的并集。 |
boolean |
equals(Object obj)
确定指定的 Object 是否与此 Rectangle2D 相等。 |
Rectangle2D |
getBounds2D()
返回此 Rectangle2D 的高精度边界框。 |
PathIterator |
getPathIterator(AffineTransform at)
返回定义此 Rectangle2D 边界的迭代对象。 |
PathIterator |
getPathIterator(AffineTransform at,
double flatness)
返回定义变平的 Rectangle2D 边界的迭代对象。 |
int |
hashCode()
返回此 Rectangle2D 的哈希码。 |
static void |
intersect(Rectangle2D src1,
Rectangle2D src2,
Rectangle2D dest)
将指定的一对源 Rectangle2D 对象相交,并将结果置于指定的目标 Rectangle2D 对象中。 |
boolean |
intersects(double x,
double y,
double w,
double h)
测试此 Rectangle2D 的内部是否与指定矩形坐标集的内部相交。 |
boolean |
intersectsLine(double x1,
double y1,
double x2,
double y2)
测试指定线段是否与此 Rectangle2D 的内部相交。 |
boolean |
intersectsLine(Line2D l)
测试指定的线段是否与此 Rectangle2D 的内部相交。 |
abstract int |
outcode(double x,
double y)
确定指定坐标相对于此 Rectangle2D 的位置。 |
int |
outcode(Point2D p)
确定指定的 Point2D 相对于此 Rectangle2D 的位置。 |
void |
setFrame(double x,
double y,
double w,
double h)
将此 Rectangle2D 外部边界的位置和大小设置为指定矩形值。 |
abstract void |
setRect(double x,
double y,
double w,
double h)
将此 Rectangle2D 的位置和大小设置为指定的 double 值。 |
void |
setRect(Rectangle2D r)
将此 Rectangle2D 设置为与指定的 Rectangle2D 相同。 |
static void |
union(Rectangle2D src1,
Rectangle2D src2,
Rectangle2D dest)
将一对源 Rectangle2D 对象相并,并将结果置于指定的目标 Rectangle2D 对象中。 |
从类 java.awt.geom.RectangularShape 继承的方法 |
---|
clone, contains, contains, getBounds, getCenterX, getCenterY, getFrame, getHeight, getMaxX, getMaxY, getMinX, getMinY, getWidth, getX, getY, intersects, isEmpty, setFrame, setFrame, setFrameFromCenter, setFrameFromCenter, setFrameFromDiagonal, setFrameFromDiagonal |
从类 java.lang.Object 继承的方法 |
---|
finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
字段详细信息 |
---|
public static final int OUT_LEFT
Rectangle2D
左边的位掩码。
public static final int OUT_TOP
Rectangle2D
上方的位掩码。
public static final int OUT_RIGHT
Rectangle2D
右边的位掩码。
public static final int OUT_BOTTOM
Rectangle2D
下方的位掩码。
构造方法详细信息 |
---|
protected Rectangle2D()
Rectangle2D.Float
,
Rectangle2D.Double
,
Rectangle
方法详细信息 |
---|
public abstract void setRect(double x, double y, double w, double h)
Rectangle2D
的位置和大小设置为指定的 double
值。
x, y
- 用于设置此 Rectangle2D
左上角位置的坐标w
- 用于设置此 Rectangle2D
宽度的值h
- 用于设置此 Rectangle2D
高度的值public void setRect(Rectangle2D r)
Rectangle2D
设置为与指定的 Rectangle2D
相同。
r
- 指定的 Rectangle2D
public boolean intersectsLine(double x1, double y1, double x2, double y2)
Rectangle2D
的内部相交。
x1, y1
- 指定线段的第一个端点x2, y2
- 指定线段的第二个端点
Rectangle2D
的内部相交,则返回 true
;否则返回 false
。public boolean intersectsLine(Line2D l)
Rectangle2D
的内部相交。
l
- 要测试是否与此 Rectangle2D
内部相交的指定 Line2D
Line2D
与此 Rectangle2D
的内部相交,则返回 true
;否则返回 false
。public abstract int outcode(double x, double y)
Rectangle2D
的位置。此方法计算适当掩码值的二进制 OR,这些值针对此 Rectangle2D
的每个边指示指定坐标是否在此 Rectangle2D
的其余边缘的同一侧。
x, y
- 指定的坐标
OUT_LEFT
,
OUT_TOP
,
OUT_RIGHT
,
OUT_BOTTOM
public int outcode(Point2D p)
Point2D
相对于此 Rectangle2D
的位置。此方法计算适当掩码值的二进制 OR,这些值针对此 Rectangle2D
的每个边指示指定的 Point2D
是否在此 Rectangle2D
的其余边缘的同一侧。
p
- 指定的 Point2D
OUT_LEFT
,
OUT_TOP
,
OUT_RIGHT
,
OUT_BOTTOM
public void setFrame(double x, double y, double w, double h)
Rectangle2D
外部边界的位置和大小设置为指定矩形值。
RectangularShape
中的 setFrame
x, y
- 用于设置此 Rectangle2D
外部边界左上角位置的坐标w
- 用于设置此 Rectangle2D
外部边界宽度的值h
- 用于设置此 Rectangle2D
外部边界高度的值RectangularShape.getFrame()
public Rectangle2D getBounds2D()
Rectangle2D
的高精度边界框。
Rectangle2D
的边界框。Shape.getBounds()
public boolean contains(double x, double y)
Rectangle2D
对象的边界内。
x, y
- 要测试的坐标
Rectangle2D
的边界内,则返回 true
;否则返回 false
。public boolean intersects(double x, double y, double w, double h)
Rectangle2D
的内部是否与指定矩形坐标集的内部相交。
x, y
- 指定的矩形坐标集左上角的坐标w
- 指定的矩形坐标集的宽度h
- 指定的矩形坐标集的高度
Rectangle2D
与指定矩形坐标集的内部相交,则返回 true
;否则返回 false
。Area
public boolean contains(double x, double y, double w, double h)
Rectangle2D
的内部是否完全包含指定矩形坐标集。
x, y
- 指定的矩形坐标集左上角的坐标w
- 指定的矩形坐标集的宽度h
- 指定的矩形坐标集的高度
Rectangle2D
完全包含指定的矩形坐标集,则返回 true
;否则返回 false
。Area
,
Shape.intersects(double, double, double, double)
public abstract Rectangle2D createIntersection(Rectangle2D r)
Rectangle2D
对象,它表示此 Rectangle2D
与指定 Rectangle2D
的交集。
r
- 与此 Rectangle2D
相交的 Rectangle2D
Rectangle2D
和此 Rectangle2D
包含的最大的 Rectangle2D
。public static void intersect(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)
Rectangle2D
对象相交,并将结果置于指定的目标 Rectangle2D
对象中。为了避免创建第三个 Rectangle2D 对象,将其中一个源矩形作为目标矩形也是可以的,但这样此方法将改写源矩形的初始点。
src1
- 要彼此相交的一对 Rectangle2D
对象中的第一个对象src2
- 要彼此相交的一对 Rectangle2D
对象中的第二个对象dest
- 保存 src1
与 src2
相交结果的 Rectangle2D
public abstract Rectangle2D createUnion(Rectangle2D r)
Rectangle2D
对象,它表示此 Rectangle2D
与指定 Rectangle2D
的并集。
r
- 与此 Rectangle2D
合并的 Rectangle2D
Rectangle2D
和此 Rectangle2D
的最小的 Rectangle2D
。public static void union(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest)
Rectangle2D
对象相并,并将结果置于指定的目标 Rectangle2D
对象中。为了避免创建第三个 Rectangle2D 对象,将其中一个源矩形作为目标矩形也是可以的,但这样此方法将改写源矩形的初始点。
src1
- 要彼此相并的一对 Rectangle2D
对象中的第一个对象src2
- 要彼此相并的 Rectangle2D
对象中的第二个对象dest
- 保存 src1
与 src2
相并结果的 Rectangle2D
public void add(double newx, double newy)
newx
和 newy
指定的点添加到此 Rectangle2D
中。所得到的 Rectangle2D
是同时包含原始 Rectangle2D
和指定点的最小的 Rectangle2D
。
在添加一个点后,以添加的点为参数调用 contains
方法不一定返回 true
。对于矩形的右边和底部边界线上的点,contains
方法不返回 true
。所以,如果添加的点落在放大的矩形的左边和底部边界线上,则 contains
将针对该点返回 false
。
newx, newy
- 新点的坐标public void add(Point2D pt)
Point2D
对象 pt
添加到此 Rectangle2D
中。所得到的 Rectangle2D
是同时包含原始 Rectangle2D
和指定的 Point2D
的最小的 Rectangle2D
。
在添加一个点后,以添加的点为参数调用 contains
方法不一定返回 true
。对于矩形的右边和底部边界线上的点,contains
方法不返回 true
。所以,如果添加的点落在放大的矩形的左边和底部边界线上,则 contains
将针对该点返回 false
。
pt
- 添加到此 Rectangle2D
中的新 Point2D
public void add(Rectangle2D r)
Rectangle2D
对象添加到此 Rectangle2D
中。得到的 Rectangle2D
是两个 Rectangle2D
对象的并集。
r
- 要添加到此 Rectangle2D
中的 Rectangle2D
。public PathIterator getPathIterator(AffineTransform at)
Rectangle2D
边界的迭代对象。此类的迭代器是多线程安全的,这意味着此 Rectangle2D
类保证对此 Rectangle2D
对象几何形状所作的修改不会对该几何形状中正在进行的迭代产生影响。
at
- 一个可选的 AffineTransform
,用于在迭代中返回的坐标,如果需要未转换的坐标,则为 null
Rectangle2D
轮廓几何形状的 PathIterator
对象,一次一段。public PathIterator getPathIterator(AffineTransform at, double flatness)
Rectangle2D
边界的迭代对象。因为矩形已经是平的,所以 flatness
参数会被忽略。此类的迭代器是多线程安全的,这意味着此 Rectangle2D
类保证对此 Rectangle2D
对象几何形状所作的修改不会对该几何形状中正在进行的迭代产生影响。
Shape
中的 getPathIterator
RectangularShape
中的 getPathIterator
at
- 一个可选 AffineTransform
,用于在迭代中返回的坐标,如果需要未转换的坐标,则为 null
flatness
- 用来近似曲线段的直线段偏离原始曲线上任一点的最大距离。因为矩形已经是平的,所以 flatness
参数会被忽略。
PathIterator
对象,该对象返回此 Rectangle2D
的轮廓的几何形状,一次一段。public int hashCode()
Rectangle2D
的哈希码。
Object
中的 hashCode
Rectangle2D
对象的哈希码。Object.equals(java.lang.Object)
,
Hashtable
public boolean equals(Object obj)
Object
是否与此 Rectangle2D
相等。如果指定的 Object
是 Rectangle2D
的实例并且位置和大小与此 Rectangle2D
相同,则其与此 Rectangle2D
相等。
Object
中的 equals
obj
- 要与此 Rectangle2D
进行比较的 Object
。
obj
是 Rectangle2D
的实例并且与 Rectangle2D
具有相同值,则返回 true
;否则返回 false
。Object.hashCode()
,
Hashtable
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。