ランダムな位置に(接続された頂点のリストとして)複数の円があります。
円が交差すると、閉じた領域が作成されます (ベン図のようにhttp://en.wikipedia.org/wiki/Venn_diagram )
これらすべての領域の個別のポリゴンを生成するにはどうすればよいですか? 目標は、次の例のように、すべての領域を個別のポリゴンで色付けできるようにすることです。
反復ブール交差演算で一般的な解決策は可能ですか?
編集
次の簡単な抜粋は、[NodeBox](http://nodebox.net/code/index.php/Home)
交差する楕円を描画するスクリプトです。
oval(x0,y0,w,h)
楕円を作成します。
docによると、次のようなパスのブール演算p[19].difference(p[17])
は「フラット」な結果をもたらします (「多数の直線セグメントで構成される」)。
パスの座標を追加または変更できます。
size(500, 500)
p = []
s = 54
nofill()
stroke(0)
for k in xrange(10):
w = 10+k*s/2
w2 = 10+k*s
h = 10+k*s
h2= 10+k*s
p.append( oval(WIDTH/2 - w/2, HEIGHT/2 - h/2, w, h, draw=False))
p.append( oval(WIDTH/2 - w2/2, HEIGHT/2 - h2/2, w2, h2, draw=False))
cp = p[19].difference(p[17]).intersect(p[18], flatness = 0.3)
for pi in p:
drawpath(pi)
fill(color(1,0,0))
drawpath(cp)