JavaTM 2 Platform
Standard Ed. 5.0

java.awt.geom
类 RectangularShape

java.lang.Object
  继承者 java.awt.geom.RectangularShape
所有已实现的接口:
Shape, Cloneable
直接已知子类:
Arc2D, Ellipse2D, Rectangle2D, RoundRectangle2D

public abstract class RectangularShape
extends Object
implements Shape, Cloneable

RectangularShape 是许多 Shape 对象的基类,这些对象的几何形状由矩形框架定义。此类本身不直接指定任何特定的几何形状,而只是提供由整个 Shape 对象种类继承的操纵方法。由此类提供的操纵方法可用于查询和修改矩形框架,为子类定义其几何形状提供引用。


构造方法摘要
protected RectangularShape()
          这是一个不可直接实例化的抽象类。
 
方法摘要
 Object clone()
          创建一个与此对象具有相同类和相同内容的新对象。
 boolean contains(Point2D p)
          测试指定的 Point2D 是否在 Shape 的边界内。
 boolean contains(Rectangle2D r)
          测试 Shape 内部是否完全包含指定的 Rectangle2D
 Rectangle getBounds()
          返回 Shape 的边界框。
 double getCenterX()
          返回 Shape 的框架矩形中心的 X 坐标(以 double 精度形式)。
 double getCenterY()
          返回 Shape 的框架矩形中心的 Y 坐标(以 double 精度形式)。
 Rectangle2D getFrame()
          返回定义此对象的总体形状的框架 Rectangle2D
abstract  double getHeight()
          以 double 精度返回框架矩形的高度。
 double getMaxX()
          返回 Shape 的框架矩形的最大 X 坐标(以 double 精度形式)。
 double getMaxY()
          返回 Shape 的框架矩形的最大 Y 坐标(以 double 精度形式)。
 double getMinX()
          返回 Shape 的框架矩形的最小 X 坐标(以 double 精度形式)。
 double getMinY()
          返回 Shape 的框架矩形的最小 Y 坐标(以 double 精度形式)。
 PathIterator getPathIterator(AffineTransform at, double flatness)
          返回一个沿 Shape 对象的边界迭代并提供对 Shape 对象轮廓几何形状的平面视图访问的迭代器对象。
abstract  double getWidth()
          以 double 精度返回框架矩形的宽度。
abstract  double getX()
          返回框架矩形左上角的 X 坐标(以 double 精度形式)。
abstract  double getY()
          返回框架矩形左上角的 Y 坐标(以 double 精度形式)。
 boolean intersects(Rectangle2D r)
          测试 Shape 内部是否与指定 Rectangle2D 内部相交。
abstract  boolean isEmpty()
          确定 RectangularShape 是否为空。
abstract  void setFrame(double x, double y, double w, double h)
          将此 Shape 的框架矩形的位置和大小设置为指定的矩形值。
 void setFrame(Point2D loc, Dimension2D size)
          将此 Shape 的框架矩形的位置和大小分别设置为指定的 Point2DDimension2D
 void setFrame(Rectangle2D r)
          将此 Shape 的框架矩形设置为指定的 Rectangle2D
 void setFrameFromCenter(double centerX, double centerY, double cornerX, double cornerY)
          基于指定的中心点坐标和角点坐标设置此 Shape 的框架矩形。
 void setFrameFromCenter(Point2D center, Point2D corner)
          基于指定的中心 Point2D 和角 Point2D 设置此 Shape 的框架矩形。
 void setFrameFromDiagonal(double x1, double y1, double x2, double y2)
          基于两个指定的坐标设置此 Shape 的框架矩形的对角线。
 void setFrameFromDiagonal(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()
这是一个不可直接实例化的抽象类。

另请参见:
Arc2D, Ellipse2D, Rectangle2D, RoundRectangle2D
方法详细信息

getX

public abstract double getX()
返回框架矩形左上角的 X 坐标(以 double 精度形式)。

返回:
框架矩形左上角的 X 坐标。

getY

public abstract double getY()
返回框架矩形左上角的 Y 坐标(以 double 精度形式)。

返回:
框架矩形左上角的 Y 坐标。

getWidth

public abstract double getWidth()
double 精度返回框架矩形的宽度。

返回:
框架矩形的宽度。

getHeight

public abstract double getHeight()
double 精度返回框架矩形的高度。

返回:
框架矩形的高度。

getMinX

public double getMinX()
返回 Shape 的框架矩形的最小 X 坐标(以 double 精度形式)。

返回:
Shape 的框架矩形的最小 X 坐标。

getMinY

public double getMinY()
返回 Shape 的框架矩形的最小 Y 坐标(以 double 精度形式)。

返回:
Shape 的框架矩形的最小 Y 坐标。

getMaxX

public double getMaxX()
返回 Shape 的框架矩形的最大 X 坐标(以 double 精度形式)。

返回:
Shape 的框架矩形的最大 X 坐标。

getMaxY

public double getMaxY()
返回 Shape 的框架矩形的最大 Y 坐标(以 double 精度形式)。

返回:
Shape 的框架矩形的最大 Y 坐标。

getCenterX

public double getCenterX()
返回 Shape 的框架矩形中心的 X 坐标(以 double 精度形式)。

返回:
Shape 对象的框架矩形中心的 X 坐标。

getCenterY

public double getCenterY()
返回 Shape 的框架矩形中心的 Y 坐标(以 double 精度形式)。

返回:
Shape 对象的框架矩形中心的 Y 坐标。

getFrame

public Rectangle2D getFrame()
返回定义此对象的总体形状的框架 Rectangle2D

返回:
一个 Rectangle2D,它是使用 double 坐标指定的。
另请参见:
setFrame(double, double, double, double), setFrame(Point2D, Dimension2D), setFrame(Rectangle2D)

isEmpty

public abstract boolean isEmpty()
确定 RectangularShape 是否为空。当 RectangularShape 为空时,它不封闭任何区域。

返回:
如果 RectangularShape 为空,则返回 true;否则返回 false

setFrame

public abstract void setFrame(double x,
                              double y,
                              double w,
                              double h)
将此 Shape 的框架矩形的位置和大小设置为指定的矩形值。框架矩形供 RectangularShape 的子类用于定义其几何形状。

参数:
x, y - 指定的矩形形状左上角的坐标
w - 指定的矩形形状的宽度
h - 指定的矩形形状的高度
另请参见:
getFrame()

setFrame

public void setFrame(Point2D loc,
                     Dimension2D size)
将此 Shape 的框架矩形的位置和大小分别设置为指定的 Point2DDimension2D。框架矩形供 RectangularShape 的子类用于定义其几何形状。

参数:
loc - 指定的 Point2D
size - 指定的 Dimension2D
另请参见:
getFrame()

setFrame

public void setFrame(Rectangle2D r)
将此 Shape 的框架矩形设置为指定的 Rectangle2D。框架矩形供 RectangularShape 的子类用于定义其几何形状。

参数:
r - 指定的 Rectangle2D
另请参见:
getFrame()

setFrameFromDiagonal

public void setFrameFromDiagonal(double x1,
                                 double y1,
                                 double x2,
                                 double y2)
基于两个指定的坐标设置此 Shape 的框架矩形的对角线。框架矩形供 RectangularShape 的子类用于定义其几何形状。

参数:
x1,y1 - 第一个指定的坐标
x2,y2 - 第二个指定的坐标

setFrameFromDiagonal

public void setFrameFromDiagonal(Point2D p1,
                                 Point2D p2)
基于两个指定的 Point2D 对象设置此 Shape 的框架矩形的对角线。框架矩形供 RectangularShape 的子类用于定义其几何形状。

参数:
p1, p2 - 两个指定的 Point2D 对象

setFrameFromCenter

public void setFrameFromCenter(double centerX,
                               double centerY,
                               double cornerX,
                               double cornerY)
基于指定的中心点坐标和角点坐标设置此 Shape 的框架矩形。框架矩形供 RectangularShape 的子类用于定义其几何形状。

参数:
centerX, centerY - 中心点坐标
cornerX, cornerY - 角点坐标

setFrameFromCenter

public void setFrameFromCenter(Point2D center,
                               Point2D corner)
基于指定的中心 Point2D 和角 Point2D 设置此 Shape 的框架矩形。框架矩形供 RectangularShape 的子类用于定义其几何形状。

参数:
center - 指定的中心 Point2D
corner - 指定的角 Point2D

contains

public boolean contains(Point2D p)
测试指定的 Point2D 是否在 Shape 的边界内。

指定者:
接口 Shape 中的 contains
参数:
p - 指定的 Point2D
返回:
如果的 Point2DShape 对象的边界内,则返回 true;否则返回 false

intersects

public boolean intersects(Rectangle2D r)
测试 Shape 内部是否与指定 Rectangle2D 内部相交。

指定者:
接口 Shape 中的 intersects
参数:
r - 指定的 Rectangle2D
返回:
如果 Shape 与指定的 Rectangle2D 相交,则返回 true;否则返回 false
另请参见:
Shape.intersects(double, double, double, double)

contains

public boolean contains(Rectangle2D r)
测试 Shape 内部是否完全包含指定的 Rectangle2D

指定者:
接口 Shape 中的 contains
参数:
r - 指定的 Rectangle2D
返回:
如果 Shape 完全包含指定的 Rectangle2D,则返回 true;否则返回 false
另请参见:
Shape.contains(double, double, double, double)

getBounds

public Rectangle getBounds()
返回 Shape 的边界框。

指定者:
接口 Shape 中的 getBounds
返回:
Shape 指定范围的 Rectangle 对象。
另请参见:
Shape.getBounds2D()

getPathIterator

public PathIterator getPathIterator(AffineTransform at,
                                    double flatness)
返回一个沿 Shape 对象的边界迭代并提供对 Shape 对象轮廓几何形状的平面视图访问的迭代器对象。

迭代器将只返回 SEG_MOVETO、SEG_LINETO 和 SEG_CLOSE 点类型。

flatness 参数控制曲线段分段的数量,指定变换的不平曲线上任一点能够偏离返回的变平路径段的最大距离。可以指定一个可选的 AffineTransform,以便相应地变换迭代中返回的坐标。

指定者:
接口 Shape 中的 getPathIterator
参数:
at - 可选的 AffineTransform,应用于迭代中返回坐标,如果需要未变换的坐标,则为 null
flatness - 用来近似曲线段的直线段偏离原始曲线上任一点的最大距离
返回:
提供对 Shape 对象的变平几何形状的访问的 PathIterator 对象。

clone

public Object clone()
创建一个与此对象具有相同类和相同内容的新对象。

覆盖:
Object 中的 clone
返回:
此实例的一个副本。
抛出:
OutOfMemoryError - 如果没有足够的内存。
从以下版本开始:
1.2
另请参见:
Cloneable

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策