GeneralPath
类表示根据直线、二次曲线和三次 (Bézier) 曲线构造的几何路径。它可以包含多个子路径。
缠绕规则指定确定路径内部的方式。缠绕规则有两种类型:EVEN_ODD 和 NON_ZERO。
EVEN_ODD 缠绕规则意味着,从路径外向区域内的点移动并穿过它时,路径的封闭区域在内部区域和外部区域之间交替变化。
NON_ZERO 缠绕规则意味着,如果从给定点朝任意方向向无穷大绘制射线并检查路径与射线相交的位置,当且仅当路径从左到右穿过射线的次数不等于路径从右到左穿过射线的次数时,点位于路径内。
void | append(PathIterator pi, boolean connect) 将指定 PathIterator 对象的几何形状追加到路径中,可能使用一条线段将新几何形状连接到现有的路径段。 |
void | append(Shape s, boolean connect) 将指定 Shape 对象的几何形状追加到路径中,可能使用一条线段将新几何形状连接到现有的路径段。 |
void | closePath() 通过向最后 moveTo 的坐标绘制直线闭合当前子路径。 |
boolean | contains(double x, double y) 测试指定坐标是否在 Shape 的边界内。 |
boolean | contains(double x, double y, double w, double h) 测试指定矩形区域是否在 Shape 的边界内。 |
boolean | contains(Point2D p) 测试指定 Point2D 是否在 Shape 的边界内。 |
boolean | contains(Rectangle2D r) 测试指定 Rectangle2D 是否在 Shape 的边界内。 |