ボロノイ図の作り方
1.母点(pn)の3母点の接点円の中心(rn)を、
すべての母点の組合せで求めます。(組合せ数はnC3)
ただし母点3点の接点がある円内に母点が存在する場合の組合せは対象外にします。
2.ボロノイ辺を描く すべての該当円について、以下の処理をします。
(1)該当円の接点(母点)3点の内、2点の母点を共有するすべての円の中心点を求め、
中心点を結ぶ線がボロノイ辺となります。
(2)該当する円がない場合は、該当2点の母点を結ぶ2等分線がボロノイ辺の一部となります。
(該当円の中心点から、母点が存在しない方向に引いた線がボロノイ辺となります。)
※ドロネー図は母点を頂点として、三角形で分割したものです。
3母点の接点円の中心の求め方
母点p1、p2及びp2、p3の垂直2等分線をy1=a1x1+c1 y2=a2x2+c2とする
それぞれの垂直2等分線の傾きを
a1=-(x2-x1)/(y2-y1) a2=-(x3-x2)/(y3-y2)とする
母点を結ぶ直線と、垂直2等分線の交点をそれぞれ
x12=x1+(x2-x1)/2 y12=y1+(y2-y1)/2、
x23=x2+(x3-x2)/2 y23=y2+(y3-y2)/2とする
それぞれの切片(y軸との交点)を求めると
c1=y12-a1x12 c2=y23-a2x23となり
それぞれの垂直2等分線の交点を求めると
x=8c2-c1)/(a1-a2) 、y=(a2c1-a1c2)/(a2-a1)になります。
母点との距離は r=√((x1-x)2+(y1-y)2)となります。
|