我创建了自定义形状,实质上它是四个Arc2D对象的集合。Java - 填充自定义形状
当这些弧形画出时,它们形成可以被认为是四点圆形星形的形状,有点像三叶草。一个弧结束,另一个开始。它们在中心形成一个正方形。所以想象一下,以一个方形并在每边画半圈。
我可以将这种形状绘制成Graphics2D对象,但是当我填充它时,它将只填充圆弧而不是中心正方形。填充这个内部广场是我的问题。
我已经实施了下面的getPathIterator()
方法。我也实施了方法。但它仍然只会填满弧线。我试着添加一个Rectangle
。填充形状时,矩形/正方形将被正确填充,但它也会绘制矩形,这显然应该是预期的,但绝对不是所需的结果。
那么,有没有人有任何想法如何“填补”这样的形状?
public PathIterator getPathIterator(AffineTransform at) {
GeneralPath gp = new GeneralPath
for (Arc2D arcs : this.arcs) {
gp.append(arc, false);
}
return gp.getPathIterator(at);
}
缠绕规则你是什么'Arc2D'实例的闭合类型? – trashgod 2010-07-26 20:40:49