|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
java.lang.Object java.awt.geom.Path2D java.awt.geom.Path2D.Double
public static class Path2D.Double
Double
类定义了一条几何路径,它具有以双精度浮点值形式存储的坐标。
嵌套类摘要 |
---|
从类 java.awt.geom.Path2D 继承的嵌套类/接口 |
---|
Path2D.Double, Path2D.Float |
字段摘要 |
---|
从类 java.awt.geom.Path2D 继承的字段 |
---|
WIND_EVEN_ODD, WIND_NON_ZERO |
构造方法摘要 | |
---|---|
Path2D.Double()
根据 Path2D.WIND_NON_ZERO 的默认旋绕规则构造一个新的双精度空 Path2D 对象。 |
|
Path2D.Double(int rule)
根据指定旋绕规则构造一个新的双精度空 Path2D 对象,以控制需要定义路径内部的操作。 |
|
Path2D.Double(int rule,
int initialCapacity)
根据指定旋绕规则和指定初始容量构造一个新的双精度空 Path2D 对象,以存储路径段。 |
|
Path2D.Double(Shape s)
根据任意 Shape 对象构造一个新的双精度 Path2D 对象。 |
|
Path2D.Double(Shape s,
AffineTransform at)
根据由 AffineTransform 对象变换的任意 Shape 对象构造一个新的双精度 Path2D 对象。 |
方法摘要 | |
---|---|
void |
append(PathIterator pi,
boolean connect)
将指定 PathIterator 对象的几何形状添加到路径中,可能要使用一条线段将新几何形状连接到现有路径段。 |
Object |
clone()
创建一个与此对象具有相同类的新对象。 |
void |
curveTo(double x1,
double y1,
double x2,
double y2,
double x3,
double y3)
通过绘制与当前坐标和指定坐标 (x3,y3) 都相交的 Bézier 曲线,并将指定点 (x1,y1) 和 (x2,y2) 用作 Bézier 曲线的控制点,可以将由三个新点定义的曲线段添加到路径中。 |
Rectangle2D |
getBounds2D()
返回一个高精度的、比 getBounds 方法更准确的 Shape 边界框。 |
PathIterator |
getPathIterator(AffineTransform at)
返回一个沿着 Shape 边界迭代并提供对 Shape 轮廓几何形状的访问的迭代器对象。 |
void |
lineTo(double x,
double y)
通过绘制一条从当前坐标到新指定坐标(以双精度指定)的直线,将一个点添加到路径中。 |
void |
moveTo(double x,
double y)
通过移动到指定坐标(以双精度指定),将一个点添加到路径中。 |
void |
quadTo(double x1,
double y1,
double x2,
double y2)
通过绘制与当前坐标和指定坐标 (x2,y2) 都相交的二次曲线,并将指定点 (x1,y1) 用作二次曲线参数控制点,可以将由两个新点定义的曲线段添加到路径中。 |
void |
transform(AffineTransform at)
使用指定的 AffineTransform 变换此路径的几何形状。 |
从类 java.awt.geom.Path2D 继承的方法 |
---|
append, closePath, contains, contains, contains, contains, contains, contains, contains, contains, createTransformedShape, getBounds, getCurrentPoint, getPathIterator, getWindingRule, intersects, intersects, intersects, intersects, reset, setWindingRule |
从类 java.lang.Object 继承的方法 |
---|
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public Path2D.Double()
Path2D.WIND_NON_ZERO
的默认旋绕规则构造一个新的双精度空 Path2D
对象。
public Path2D.Double(int rule)
Path2D
对象,以控制需要定义路径内部的操作。
rule
- 旋绕规则Path2D.WIND_EVEN_ODD
,
Path2D.WIND_NON_ZERO
public Path2D.Double(int rule, int initialCapacity)
Path2D
对象,以存储路径段。此数是对路径中的路径段数量的初始猜测,但存储量可以根据需要扩展,以存储添加到此路径的所有路径段。
rule
- 旋绕规则initialCapacity
- 对路径中路径段数量的估计Path2D.WIND_EVEN_ODD
,
Path2D.WIND_NON_ZERO
public Path2D.Double(Shape s)
Shape
对象构造一个新的双精度 Path2D
对象。此路径的所有初始几何形状和旋绕规则均取自指定的 Shape
对象。
s
- 指定的 Shape
对象public Path2D.Double(Shape s, AffineTransform at)
AffineTransform
对象变换的任意 Shape
对象构造一个新的双精度 Path2D
对象。此路径的所有初始几何形状和旋绕规则均取自指定的 Shape
对象,并由指定的 AffineTransform
对象变换。
s
- 指定的 Shape
对象at
- 指定的 AffineTransform
对象方法详细信息 |
---|
public final void moveTo(double x, double y)
Path2D
中的 moveTo
x
- 指定的 X 坐标y
- 指定的 Y 坐标public final void lineTo(double x, double y)
Path2D
中的 lineTo
x
- 指定的 X 坐标y
- 指定的 Y 坐标public final void quadTo(double x1, double y1, double x2, double y2)
(x2,y2)
都相交的二次曲线,并将指定点 (x1,y1)
用作二次曲线参数控制点,可以将由两个新点定义的曲线段添加到路径中。所有坐标都以双精度指定。
Path2D
中的 quadTo
x1
- 二次曲线控制点的 X 坐标y1
- 二次曲线控制点的 Y 坐标x2
- 终端点的 X 坐标y2
- 终端点的 Y 坐标public final void curveTo(double x1, double y1, double x2, double y2, double x3, double y3)
(x3,y3)
都相交的 Bézier 曲线,并将指定点 (x1,y1)
和 (x2,y2)
用作 Bézier 曲线的控制点,可以将由三个新点定义的曲线段添加到路径中。所有坐标都以双精度指定。
Path2D
中的 curveTo
x1
- 第一个 Bézier 控制点的 X 坐标y1
- 第一个 Bézier 控制点的 Y 坐标x2
- 第二个 Bézier 控制点的 X 坐标y2
- 第二个 Bézier 控制点的 Y 坐标x3
- 终端点的 X 坐标y3
- 终端点的 Y 坐标public final void append(PathIterator pi, boolean connect)
PathIterator
对象的几何形状添加到路径中,可能要使用一条线段将新几何形状连接到现有路径段。如果 connect
参数为 true
且路径是非空的,则添加的 Shape
几何形状的所有初始 moveTo
将被转换为 lineTo
段。如果这种连接 lineTo
段的目标坐标与当前开放子路径的结束坐标匹配,那么该线段将被作为多余线段忽略。指定 Shape
的旋绕规则将被忽略,添加的几何形状由为此路径指定的旋绕规则来管理。
Path2D
中的 append
pi
- 其几何形状将被添加到此路径的 PathIterator
connect
- 一个 boolean 值,用于控制是否将初始 moveTo
段转换为 lineTo
段,从而将新几何形状连接到现有路径public final void transform(AffineTransform at)
AffineTransform
变换此路径的几何形状。原地变换几何形状,它将永久更改由此对象定义的边界。
Path2D
中的 transform
at
- 用于变换区域的 AffineTransform
public final Rectangle2D getBounds2D()
getBounds
方法更准确的 Shape
边界框。注意,不保证返回的 Rectangle2D
是包围 Shape
的最小边界框,只保证 Shape
完全位于指示的 Rectangle2D
中。此方法返回的边界框通常比 getBounds
方法返回的更紧密,而且永远不会因为溢出问题而出错,因为返回值可以是一个使用双精度值存储尺寸的 Rectangle2D
实例。
Shape
中的 getBounds2D
Rectangle2D
实例,它是 Shape
的高精度边界框。Shape.getBounds()
public PathIterator getPathIterator(AffineTransform at)
Shape
边界迭代并提供对 Shape
轮廓几何形状的访问的迭代器对象。如果指定一个可选 AffineTransform
,则相应地转换迭代中返回的坐标。
每次调用此方法都会返回一个最新的、遍历 Shape
对象几何形状的 PathIterator
对象,该对象独立于其他所有同时使用的 PathIterator
对象。
建议但不保证实现 Shape
接口的对象将进行中的迭代与该迭代期间可能对原始对象几何形状所做的任何更改隔离开来。
此类的迭代器不是多线程安全的,这意味着 Path2D
类不保证对此 Path2D
对象几何形状所作的修改不影响该几何形状已在处理中的迭代。
Shape
中的 getPathIterator
at
- AffineTransform
Shape
边界进行迭代并提供对此 Shape
轮廓几何形状进行访问的新 PathIterator
public final Object clone()
Path2D
中的 clone
OutOfMemoryError
- 如果没有足够的内存。Cloneable
|
JavaTM Platform Standard Ed. 6 |
|||||||||
上一个类 下一个类 | 框架 无框架 | |||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
版权所有 2007 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策。