- java.lang.Object
-
- java.awt.geom.Path2D
-
- java.awt.geom.Path2D.Float
-
- 实现的所有接口
-
Shape
,Serializable
,Cloneable
- 已知直接子类:
-
GeneralPath
- Enclosing class:
- Path2D
public static class Path2D.Float extends Path2D implements Serializable
Float
类定义了一个几何路径,其坐标存储在单精度浮点中。- 从以下版本开始:
- 1.6
- 另请参见:
- Serialized Form
-
-
嵌套类汇总
-
嵌套类/接口声明在类 java.awt.geom.Path2D
Path2D.Double, Path2D.Float
-
-
字段汇总
-
声明的属性在类 java.awt.geom.Path2D
WIND_EVEN_ODD, WIND_NON_ZERO
-
-
构造方法摘要
构造方法 构造器 描述 Float()
构造一个新的空单精度Path2D
对象,其默认绕组规则为Path2D.WIND_NON_ZERO
。Float(int rule)
使用指定的缠绕规则构造一个新的空单精度Path2D
对象,以控制需要定义路径内部的操作。Float(int rule, int initialCapacity)
构造一个新的空单精度Path2D
对象,该对象具有指定的缠绕规则和指定的初始容量来存储路径段。Float(Shape s)
构造一个新的单精度Path2D
从任意对象Shape
对象。Float(Shape s, AffineTransform at)
构造一个新的单精度Path2D
从任意物体Shape
对象,由一个转化AffineTransform
对象。
-
方法摘要
所有方法 实例方法 具体的方法 变量和类型 方法 描述 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控制点,将由三个新点定义的曲线段添加到路径中。void
curveTo(float x1, float y1, float x2, float y2, float x3, float y3)
通过绘制与当前坐标和指定坐标(x3,y3)
相交的B?zier曲线,使用指定的点(x1,y1)
和(x2,y2)
作为Béier控制点,将由三个新点定义的曲线段添加到路径中。Rectangle2D
getBounds2D()
返回Shape
高精度和更精确的边界框,而不是getBounds
方法。PathIterator
getPathIterator(AffineTransform at)
返回迭代器对象,该对象沿Shape
边界进行迭代,并提供对Shape
轮廓几何的访问。void
lineTo(double x, double y)
通过从当前坐标绘制直线到以double精度指定的新指定坐标,将路径添加到路径。void
lineTo(float x, float y)
通过从当前坐标绘制直线到以float精度指定的新指定坐标,将路径添加到路径。void
moveTo(double x, double y)
通过移动到以double精度指定的指定坐标,向路径添加点。void
moveTo(float x, float y)
通过移动到float精度中指定的指定坐标,向路径添加一个点。void
quadTo(double x1, double y1, double x2, double y2)
通过绘制与当前坐标和指定坐标(x2,y2)
相交的二次曲线,使用指定点(x1,y1)
作为二次参数控制点,将由两个新点定义的曲线段添加到路径中。void
quadTo(float x1, float y1, float x2, float 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, trimToSize
-
-
-
-
构造方法详细信息
-
Float
public Float()
构造一个新的空单精度Path2D
对象,其默认绕组规则为Path2D.WIND_NON_ZERO
。- 从以下版本开始:
- 1.6
-
Float
public Float(int rule)
使用指定的缠绕规则构造一个新的空单精度Path2D
对象,以控制需要定义路径内部的操作。- 参数
-
rule
- 缠绕规则 - 从以下版本开始:
- 1.6
- 另请参见:
-
Path2D.WIND_EVEN_ODD
,Path2D.WIND_NON_ZERO
-
Float
public Float(int rule, int initialCapacity)
使用指定的缠绕规则和指定的初始容量构造一个新的空单精度Path2D
对象来存储路径段。 此数字是关于将多少路径段添加到路径的初始猜测,但存储会根据需要进行扩展,以存储添加的任何路径段。- 参数
-
rule
- 缠绕规则 -
initialCapacity
- 路径中路径段数的估计值 - 从以下版本开始:
- 1.6
- 另请参见:
-
Path2D.WIND_EVEN_ODD
,Path2D.WIND_NON_ZERO
-
Float
public Float(Shape s)
构造一个新的单精度Path2D
从任意对象Shape
对象。 此路径的所有初始几何体和缠绕规则均取自指定的Shape
对象。- 参数
-
s
- 指定的Shape
对象 - 从以下版本开始:
- 1.6
-
Float
public Float(Shape s, AffineTransform at)
构造一个新的单精度Path2D
从任意物体Shape
对象,由一个转化AffineTransform
对象。 此路径的所有初始几何体和缠绕规则均取自指定的Shape
对象,并由指定的AffineTransform
对象进行转换。- 参数
-
s
- 指定的Shape
对象 -
at
- 指定的AffineTransform
对象 - 从以下版本开始:
- 1.6
-
-
方法详细信息
-
moveTo
public final void moveTo(double x, double y)
通过移动到以double精度指定的指定坐标,向路径添加点。
-
moveTo
public final void moveTo(float x, float y)
通过移动到float精度中指定的指定坐标,向路径添加一个点。此方法在基础
Path2D
类上提供双精度moveTo()
方法的单精度变体。- 参数
-
x
- 指定的X坐标 -
y
- 指定的Y坐标 - 从以下版本开始:
- 1.6
- 另请参见:
-
Path2D.moveTo(double, double)
-
lineTo
public final void lineTo(double x, double y)
通过从当前坐标绘制直线到以double精度指定的新指定坐标,将路径添加到路径。
-
lineTo
public final void lineTo(float x, float y)
通过从当前坐标绘制直线到以float精度指定的新指定坐标,将路径添加到路径。此方法在基础
Path2D
类上提供双精度lineTo()
方法的单精度变体。- 参数
-
x
- 指定的X坐标 -
y
- 指定的Y坐标 - 从以下版本开始:
- 1.6
- 另请参见:
-
Path2D.lineTo(double, double)
-
quadTo
public final void quadTo(double x1, double y1, double x2, double y2)
通过绘制与当前坐标和指定坐标(x2,y2)
相交的二次曲线,使用指定点(x1,y1)
作为二次参数控制点,将由两个新点定义的曲线段添加到路径中。 所有坐标都以双精度指定。
-
quadTo
public final void quadTo(float x1, float y1, float x2, float y2)
通过绘制与当前坐标和指定坐标(x2,y2)
相交的二次曲线,使用指定点(x1,y1)
作为二次参数控制点,将由两个新点定义的曲线段添加到路径中。 所有坐标都以float精度指定。此方法在基础
Path2D
类上提供双精度quadTo()
方法的单精度变体。- 参数
-
x1
- 二次控制点的X坐标 -
y1
- 二次控制点的Y坐标 -
x2
- 最终结束点的X坐标 -
y2
- 最终结束点的Y坐标 - 从以下版本开始:
- 1.6
- 另请参见:
-
Path2D.quadTo(double, double, double, double)
-
curveTo
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控制点,将由三个新点定义的曲线段添加到路径中。 所有坐标都以双精度指定。
-
curveTo
public final void curveTo(float x1, float y1, float x2, float y2, float x3, float y3)
通过绘制与当前坐标和指定坐标(x3,y3)
相交的Bézier曲线,使用指定的点(x1,y1)
和(x2,y2)
作为Bézier控制点,将由三个新点定义的曲线段添加到路径中。 所有坐标都以float精度指定。此方法在基础
Path2D
类上提供双精度curveTo()
方法的单精度变量。- 参数
-
x1
- 第一个Bézier控制点的X坐标 -
y1
- 第一个Bézier控制点的Y坐标 -
x2
- 第二个Bézier控制点的X坐标 -
y2
- 第二个Bézier控制点的Y坐标 -
x3
- 最终结束点的X坐标 -
y3
- 最终结束点的Y坐标 - 从以下版本开始:
- 1.6
- 另请参见:
-
Path2D.curveTo(double, double, double, double, double, double)
-
append
public final void append(PathIterator pi, boolean connect)
将指定的PathIterator
对象的几何附加到路径,可能会将新几何图形连接到具有线段的现有路径段。 如果connect
参数为true
且路径不为空,则附加的Shape
的几何中的任何初始moveTo
将变为lineTo
段。 如果这样的连接lineTo
段的目标坐标与当前打开的子路径的结束坐标匹配,则该段被省略为多余的。 忽略指定的Shape
的缠绕规则,并且附加的几何图形由为此路径指定的缠绕规则控制。
-
transform
public final void transform(AffineTransform at)
使用指定的AffineTransform
转换此路径的几何。 几何体在原位转换,永久地更改此对象定义的边界。
-
getBounds2D
public final Rectangle2D getBounds2D()
返回Shape
高精度和更精确的边界框,而不是getBounds
方法。 请注意,不保证返回的Rectangle2D
是最小的边框包围Shape
,只表示Shape
完全在指定的范围内Rectangle2D
。 此方法返回的边界框通常比getBounds
方法返回的边界框更紧密,并且由于溢出问题而永远不会失败,因为返回值可以是使用双精度值来存储尺寸的Rectangle2D
的实例。请注意, definition of insideness可能会导致返回的
bounds
对象中可能不包含shape
的定义轮廓上的点的情况,但仅限于原始shape
不包含这些点的情况。如果
point
是内部shape
根据contains(point)
方法,那么它必须是内部返回Rectangle2D
界限根据对象contains(point)
所述的方法bounds
。 特别:shape.contains(p)
需要bounds.contains(p)
如果
point
不在shape
,则它可能仍包含在bounds
对象中:bounds.contains(p)
并不shape.contains(p)
- Specified by:
-
getBounds2D
接口Shape
- 结果
-
的实例
Rectangle2D
那是一个高精度边界框Shape
。 - 从以下版本开始:
- 1.6
- 另请参见:
-
Shape.getBounds()
-
getPathIterator
public final PathIterator getPathIterator(AffineTransform at)
返回迭代器对象,该对象沿Shape
边界进行迭代,并提供对Shape
轮廓几何的访问。 如果指定了可选的AffineTransform
,则会相应地转换迭代中返回的坐标。此方法每次调用返回一个新鲜
PathIterator
对象横穿的几何形状Shape
从任何其他独立对象PathIterator
在使用中在相同的时间对象。建议(但不能保证)实现
Shape
接口的对象隔离Shape
迭代,这些迭代是在此类迭代期间可能对原始对象的几何体发生的任何更改。此类的迭代器不是多线程安全的,这意味着
Path2D
类不保证对此Path2D
对象的几何的修改不会影响已在进行中的该几何的任何迭代。- Specified by:
-
getPathIterator
接口Shape
- 参数
-
at
- 在迭代中返回时应用于坐标的可选AffineTransform
null
如果需要未转换的坐标,则null
- 结果
-
一个新的
PathIterator
对象,它独立地遍历Shape
的几何。 - 从以下版本开始:
- 1.6
-
clone
public final Object clone()
创建与此对象相同的类的新对象。- Specified by:
-
clone
类Path2D
- 结果
- 这个实例的克隆。
- 异常
-
OutOfMemoryError
- 如果内存不足。 - 从以下版本开始:
- 1.6
- 另请参见:
-
Cloneable
-
-