当前位置 类层次(JDK) 所有类(JDK) 所有域和方法(JDK)

类 java.awt.Polygon

java.lang.Object
   |
   +----java.awt.Polygon

public class Polygon
extends Object
implements Shape, Serializable

Polygon 封装了坐标空间中封闭的二维区域。由任意数的线段限定,每条线段均为此多边形的一条边。在内部,一个多边形包含一个(xy)坐标对的列表,每对数据定义了相应多边形的一个向量(vertex),两个连续的数据对是该多边形的一条边的两端点。第一个和最后一个(xy)点对通过一条线段相连,封闭此多边形。


变量索引

bounds
npoints
总的顶点数。
xpoints
x 坐标数组。
ypoints
y 坐标数组。

构造子索引

Polygon()
创建一空多边形。
Polygon(int[], int[], int)
用参数指定的数据,创建并初始化一个多边形对象。

方法索引

addPoint(int, int)
向当前多边形追加一个点。
contains(int, int)
判定当前多边形是否包含指定点。
contains(Point)
判定指定点是否在当前多边形内。
getBoundingBox()
不推荐使用该方法。
getBounds()
获取当前多边形的边界框。
inside(int, int)
不推荐使用该方法。
translate(int, int)
将相应向量沿 x 轴平移 deltaX,沿y 轴平移 deltaY

变量

npoints
 public int npoints
总的顶点数。

xpoints
 public int xpoints[]
x 坐标的数组。

ypoints
 public int ypoints[]
y 坐标的数组。

bounds
 protected Rectangle bounds

构造子

Polygon
 public Polygon()
创建一空多边形。

Polygon
 public Polygon(int xpoints[],
                int ypoints[],
                int npoints)
用参数指定的数据,创建并初始化一个多边形对象。

参数:
xpoints - 一个x 坐标数组。
ypoints - 一个y 坐标数组。
npoints - 多边形的总的顶点数。
抛出: NegativeArraySizeException
如果 npoints 的值为负。

方法

translate
 public void translate(int deltaX,
                       int deltaY)
将相应向量沿 x 轴平移 deltaX,沿 y 轴平移 deltaY

参数:
deltaX - 沿 x 轴的平移量
deltaY - 沿 y 轴的平移量
addPoint
 public void addPoint(int x,
                       int y)
向当前多边形追加一个点。

如果已执行了计算当前多边形的边界框操作,诸如 getBoundscontains方法, 那么此方法将更新相应的边界框。

参数:
x - 点的 x 坐标。
y - 点的 y 坐标。
参见:
getBounds, contains
getBounds
 public Rectangle getBounds()
获取当前多边形的边界框。 此边界框是边与坐标空间中 xy 轴平行,且完全包含当前多边形的最小矩形。

返回值:
定义当前多边形边界的矩形。
getBoundingBox
 public Rectangle getBoundingBox()
注释:不推荐使用 getBoundingBox() 方法。 如同 JDK 1.1 版,用 getBounds() 方法替换。

contains
 public boolean contains(Point p)
判定指定点是否在当前多边形内。 使用一奇偶内部规则(也称为替代规则)。

参数:
p - 测试点
contains
 public boolean contains(int x,
                       int y)
判定当前多边形是否包含指定点。

( contains 方法基于 Hanpeter van Vliet [hvvliet@inter.nl.net] 编写的代码。)

参数:
x - 测试点的 x 坐标。
y - 测试点的 y 坐标。
返回值:
如果点 (xy) 被当前多边形包含则为 true;否则为 false
inside
 public boolean inside(int x,
                       int y)
注释:不推荐使用 inside() 方法。 如同 JDK 1.1 版,用 contains() 方法替换。


当前位置 类层次(JDK) 所有类(JDK) 所有域和方法(JDK)