dots_bound1
例:dots_bound1([1],[2],[3],[4],150);
- 機能:
- 平面点集の境界(凹包)を求む
- 書式:
- dots_bound1([ix],[iy],[ox],[oy],θ凹)
- 解説:
- 入力数値組[ix]と[iy]で与えられた平面点集の、θ凹(90°〜180°)より小さくない角度を持つ凹包境界曲線を求め、結果を数値組[ox],[oy]に出力します。
本関数は、まず平面点集の凸包境界を求めてから、隣接の両境界点との角度がθ凹より大きい内点を探し出し、境界点として追加していきます。
凹み角度を180°に設定すれば、dots_bound()と同じになります。
戻り値として、求めた凹包の面積を返します。
[ix],[iy] ・・・・・・・・・・・・・・・ 平面点集のXY座標の入力数値組([ix]は@で代替可能)
[ox],[oy] ・・・・・・・・・・・・・・・ 結果の凹包境界曲線のXY座標の出力数値組
θ凹 ・・・・・・・・・・・・・・・ 曲線の許容凹み角度(90°〜180°)
return |