java.lang.Object
java.awt.geom.FlatteningPathIterator
- 所有已实现的接口:
-
PathIterator
-
Field Summary
Fields declared in interface java.awt.geom.PathIterator
SEG_CLOSE, SEG_CUBICTO, SEG_LINETO, SEG_MOVETO, SEG_QUADTO, WIND_EVEN_ODD, WIND_NON_ZERO -
Constructor Summary
ConstructorsConstructorDescriptionFlatteningPathIterator(PathIterator src, double flatness) 构造一个新的FlatteningPathIterator对象,它在迭代时将路径进行平坦化。FlatteningPathIterator(PathIterator src, double flatness, int limit) 构造一个新的FlatteningPathIterator对象,它在迭代时将路径进行平坦化。 -
Method Summary
Modifier and TypeMethodDescriptionintcurrentSegment(double[] coords) 返回迭代中当前路径段的坐标和类型。intcurrentSegment(float[] coords) 返回迭代中当前路径段的坐标和类型。double返回此迭代器的平坦度。int返回此迭代器的递归限制。int返回用于确定路径内部的绕组规则。booleanisDone()检查迭代是否完成。voidnext()将迭代器移动到路径的下一个段,沿着主要遍历方向向前,只要在该方向上还有更多点。
-
Constructor Details
-
FlatteningPathIterator
构造一个新的FlatteningPathIterator对象,它在迭代时将路径进行平坦化。该迭代器不会将从源迭代器读取的任何曲线细分到超过10个细分级别,这将产生每条曲线最多1024个线段。- 参数:
-
src- 正在迭代的原始未平坦化路径 -
flatness- 控制点与平坦曲线之间的最大允许距离
-
FlatteningPathIterator
构造一个新的FlatteningPathIterator对象,它在迭代时将路径进行平坦化。limit参数允许您控制迭代器在假定曲线足够平坦而不测量与flatness参数相比之前可以进行的最大递归细分数。因此,平坦迭代永远不会生成超过每条曲线的最大数量(2^limit)线段。- 参数:
-
src- 正在迭代的原始未平坦化路径 -
flatness- 控制点与平坦曲线之间的最大允许距离 -
limit- 任何曲线段允许的最大递归细分数 - 抛出:
-
IllegalArgumentException- 如果flatness或limit小于零
-
-
Method Details
-
getFlatness
public double getFlatness()返回此迭代器的平坦度。- 返回:
-
此
FlatteningPathIterator的平坦度。
-
getRecursionLimit
public int getRecursionLimit()返回此迭代器的递归限制。- 返回:
-
此
FlatteningPathIterator的递归限制。
-
getWindingRule
public int getWindingRule()返回用于确定路径内部的绕组规则。- 指定者:
-
getWindingRule在接口PathIterator中 - 返回:
- 正在迭代的原始未平坦化路径的绕组规则。
- 参见:
-
isDone
public boolean isDone()检查迭代是否完成。- 指定者:
-
isDone在接口PathIterator中 - 返回:
-
如果所有段均已读取,则返回
true; 否则返回false。
-
next
public void next()将迭代器移动到路径的下一个段,沿着主要遍历方向向前,只要在该方向上还有更多点。- 指定者:
-
next在接口PathIterator中
-
currentSegment
public int currentSegment(float[] coords) 返回迭代中当前路径段的坐标和类型。返回值是路径段类型: SEG_MOVETO、SEG_LINETO或SEG_CLOSE。必须传入长度为6的浮点数组,并可用于存储点的坐标。每个点都存储为一对浮点x、y坐标。SEG_MOVETO和SEG_LINETO类型返回一个点,SEG_CLOSE不返回任何点。- 指定者:
-
currentSegment在接口PathIterator中 - 参数:
-
coords- 保存从此方法返回的数据的数组 - 返回:
- 当前路径段的路径段类型。
- 抛出:
-
NoSuchElementException- 如果在要返回的平坦路径中没有更多元素 - 参见:
-
currentSegment
public int currentSegment(double[] coords) 返回迭代中当前路径段的坐标和类型。返回值是路径段类型: SEG_MOVETO、SEG_LINETO或SEG_CLOSE。必须传入长度为6的双精度数组,并可用于存储点的坐标。每个点都存储为一对双精度x、y坐标。SEG_MOVETO和SEG_LINETO类型返回一个点,SEG_CLOSE不返回任何点。- 指定者:
-
currentSegment在接口PathIterator中 - 参数:
-
coords- 保存从此方法返回的数据的数组 - 返回:
- 当前路径段的路径段类型。
- 抛出:
-
NoSuchElementException- 如果在要返回的平坦路径中没有更多元素 - 参见:
-