java.lang.Object
java.awt.geom.RectangularShape
- 已知子类:
Arc2D,Ellipse2D,Rectangle2D,RoundRectangle2D
RectangularShape 是许多 Shape 对象的基类,这些对象的几何形状由矩形框定义。这个类本身并不直接指定任何特定的几何图形,而只是提供被一整类Shape对象继承的操作方法。该类提供的操作方法可用于查询和修改矩形框,为子类定义自己的几何图形提供参考。
- 自从:
- 1.2
-
构造方法总结
构造方法 -
方法总结
修饰符和类型方法描述clone()创建一个与此对象具有相同类和相同内容的新对象。booleanboolean测试Shape的内部是否完全包含指定的Rectangle2D。返回一个整数Rectangle完全包围Shape。double以double精度返回Shape框架矩形中心的 X 坐标。double以double精度返回Shape取景矩形中心的 Y 坐标。getFrame()返回定义此对象整体形状的框架Rectangle2D。abstract double以double精度返回框架矩形的高度。doublegetMaxX()以double精度返回Shape的取景矩形的最大 X 坐标。doublegetMaxY()以double精度返回Shape取景矩形的最大 Y 坐标。doublegetMinX()以double精度返回Shape的取景矩形的最小 X 坐标。doublegetMinY()以double精度返回Shape的取景矩形的最小 Y 坐标。getPathIterator(AffineTransform at, double flatness) 返回一个迭代器对象,该对象沿Shape对象的边界进行迭代,并提供对Shape对象几何轮廓的平面视图的访问。abstract doublegetWidth()以double精度返回框架矩形的宽度。abstract doublegetX()以double精度返回框架矩形左上角的 X 坐标。abstract doublegetY()以double精度返回框架矩形左上角的 Y 坐标。boolean测试Shape的内部是否与指定的Rectangle2D的内部相交。abstract booleanisEmpty()确定RectangularShape是否为空。abstract voidsetFrame(double x, double y, double w, double h) 将此Shape的框架矩形的位置和大小设置为指定的矩形值。voidsetFrame(Point2D loc, Dimension2D size) void将此Shape的框架矩形设置为指定的Rectangle2D。voidsetFrameFromCenter(double centerX, double centerY, double cornerX, double cornerY) 根据指定的中心点坐标和角点坐标设置此Shape的框架矩形。voidsetFrameFromCenter(Point2D center, Point2D corner) 根据指定的中心Point2D和角Point2D设置此Shape的框架矩形。voidsetFrameFromDiagonal(double x1, double y1, double x2, double y2) 根据两个指定的坐标设置此Shape的框架矩形的对角线。voidsetFrameFromDiagonal(Point2D p1, Point2D p2) 根据两个指定的Point2D对象设置此Shape框架矩形的对角线。在类 java.lang.Object 中声明的方法
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait在接口 java.awt.Shape 中声明的方法
contains, contains, getBounds2D, getPathIterator, intersects
-
构造方法详细信息
-
RectangularShape
protected RectangularShape()这是一个不能直接实例化的抽象类。- 自从:
- 1.2
- 参见:
-
-
方法详情
-
getX
public abstract double getX()以double精度返回框架矩形左上角的 X 坐标。- 返回:
- 框架矩形左上角的 X 坐标。
- 自从:
- 1.2
-
getY
public abstract double getY()以double精度返回框架矩形左上角的 Y 坐标。- 返回:
- 框架矩形左上角的 Y 坐标。
- 自从:
- 1.2
-
getWidth
public abstract double getWidth()以double精度返回框架矩形的宽度。- 返回:
- 框架矩形的宽度。
- 自从:
- 1.2
-
getHeight
public abstract double getHeight()以double精度返回框架矩形的高度。- 返回:
- 框架矩形的高度。
- 自从:
- 1.2
-
getMinX
public double getMinX()以double精度返回Shape的取景矩形的最小 X 坐标。- 返回:
Shape的取景矩形的最小 X 坐标。- 自从:
- 1.2
-
getMinY
public double getMinY()以double精度返回Shape的取景矩形的最小 Y 坐标。- 返回:
Shape的取景矩形的最小 Y 坐标。- 自从:
- 1.2
-
getMaxX
public double getMaxX()以double精度返回Shape的取景矩形的最大 X 坐标。- 返回:
Shape的框架矩形的最大 X 坐标。- 自从:
- 1.2
-
getMaxY
public double getMaxY()以double精度返回Shape取景矩形的最大 Y 坐标。- 返回:
Shape的框架矩形的最大 Y 坐标。- 自从:
- 1.2
-
getCenterX
public double getCenterX()以double精度返回Shape框架矩形中心的 X 坐标。- 返回:
Shape的框架矩形中心的 X 坐标。- 自从:
- 1.2
-
getCenterY
public double getCenterY()以double精度返回Shape取景矩形中心的 Y 坐标。- 返回:
Shape的框架矩形中心的 Y 坐标。- 自从:
- 1.2
-
getFrame
返回定义此对象整体形状的框架Rectangle2D。- 返回:
-
一个
Rectangle2D,在double坐标中指定。 - 自从:
- 1.2
- 参见:
-
isEmpty
public abstract boolean isEmpty()确定RectangularShape是否为空。当RectangularShape为空时,它不包含任何区域。- 返回:
true如果RectangularShape为空;false否则。- 自从:
- 1.2
-
setFrame
public abstract void setFrame(double x, double y, double w, double h) 将此Shape的框架矩形的位置和大小设置为指定的矩形值。- 参数:
x- 指定矩形左上角的X坐标y- 指定矩形左上角的Y坐标w- 指定矩形的宽度h- 指定矩形的高度- 自从:
- 1.2
- 参见:
-
setFrame
- 参数:
loc- 指定的Point2Dsize- 指定的Dimension2D- 自从:
- 1.2
- 参见:
-
setFrame
将此Shape的框架矩形设置为指定的Rectangle2D。RectangularShape的子类使用框架矩形来定义它们的几何形状。- 参数:
r- 指定的Rectangle2D- 自从:
- 1.2
- 参见:
-
setFrameFromDiagonal
public void setFrameFromDiagonal(double x1, double y1, double x2, double y2) 根据两个指定的坐标设置此Shape的框架矩形的对角线。RectangularShape的子类使用框架矩形来定义它们的几何形状。- 参数:
x1- 指定对角线起点的X坐标y1- 指定对角线起点的Y坐标x2- 指定对角线终点的X坐标y2- 指定对角线终点的Y坐标- 自从:
- 1.2
-
setFrameFromDiagonal
根据两个指定的Point2D对象设置此Shape框架矩形的对角线。RectangularShape的子类使用框架矩形来定义它们的几何形状。- 参数:
p1- 指定对角线的起点Point2Dp2- 指定对角线的末端Point2D- 自从:
- 1.2
-
setFrameFromCenter
public void setFrameFromCenter(double centerX, double centerY, double cornerX, double cornerY) 根据指定的中心点坐标和角点坐标设置此Shape的框架矩形。RectangularShape的子类使用框架矩形来定义它们的几何形状。- 参数:
centerX- 指定中心点的X坐标centerY- 指定中心点的Y坐标cornerX- 指定角点的X坐标cornerY- 指定角点的Y坐标- 自从:
- 1.2
-
setFrameFromCenter
根据指定的中心Point2D和角Point2D设置此Shape的框架矩形。RectangularShape的子类使用框架矩形来定义它们的几何形状。- 参数:
center- 指定中心Point2Dcorner- 指定角Point2D- 自从:
- 1.2
-
contains
-
intersects
测试Shape的内部是否与指定的Rectangle2D的内部相交。Shape.intersects()方法允许Shape实现在以下情况下保守地返回true:Rectangle2D和Shape相交的可能性很高,但是- 准确确定该交叉点的计算非常昂贵。
Shapes此方法可能返回true即使Rectangle2D不与Shape相交。Area类执行比大多数Shape对象更准确的几何交集计算,因此如果需要更精确的答案可以使用。- 指定者:
intersects在接口Shape中- 参数:
r- 指定的Rectangle2D- 返回:
true如果Shape的内部与指定的Rectangle2D的内部相交,或者两者极有可能相交,并且相交计算的执行成本太高;false否则。- 自从:
- 1.2
- 参见:
-
contains
测试Shape的内部是否完全包含指定的Rectangle2D。Shape.contains()方法允许Shape实现在以下情况下保守地返回false:intersect方法返回true和- 确定
Shape是否完全包含Rectangle2D的计算非常昂贵。
Shapes此方法可能返回false即使Shape包含Rectangle2D。Area类执行比大多数Shape对象更精确的几何计算,因此可以在需要更精确的答案时使用。 -
getBounds
返回一个整数Rectangle完全包围Shape。请注意,不能保证返回的Rectangle是包围Shape的最小边界框,只能保证Shape完全位于指示的Rectangle内。如果Shape溢出整数数据类型的有限范围,则返回的Rectangle也可能无法完全包围Shape。getBounds2D方法通常会返回更紧密的边界框,因为它在表示方掩码有更大的灵活性。请注意,definition of insideness 可能导致
shape定义轮廓上的点可能不被视为包含在返回的bounds对象中,但仅在这些点也不被视为包含在原始shape中的情况下。如果根据
contains(point)方法point在shape内部,那么根据bounds的contains(point)方法,它必须在返回的Rectangle边界对象内部。具体来说:shape.contains(x,y)需要bounds.contains(x,y)如果
point不在shape内,那么它可能仍包含在bounds对象中:bounds.contains(x,y)并不意味着shape.contains(x,y) -
getPathIterator
返回一个迭代器对象,该对象沿Shape对象的边界进行迭代,并提供对Shape对象几何轮廓的平面视图的访问。迭代器只返回 SEG_MOVETO、SEG_LINETO 和 SEG_CLOSE 点类型。
曲线段的细组件由
flatness参数控制,该参数指定未展平变换曲线上的任何点可以偏离返回的展平路径段的最大距离。可以指定可选的AffineTransform,以便相应地转换迭代中返回的坐标。- 指定者:
getPathIterator在接口Shape中- 参数:
at- 一个可选的AffineTransform应用于在迭代中返回的坐标,或者null如果需要未转换的坐标。flatness- 用于逼近曲线段的线段允许偏离原始曲线上任意点的最大距离- 返回:
-
一个
PathIterator对象,它提供对Shape对象的展平几何体的访问。 - 自从:
- 1.2
-
clone
创建一个与此对象具有相同类和相同内容的新对象。- 重写:
clone在类Object中- 返回:
- 此实例的克隆。
- 抛出:
OutOfMemoryError- 如果内存不足。- 自从:
- 1.2
- 参见:
-