点列の最小包含円(Smallest Enclosing Circle)を描画するコードを作成します。
Interactive Smallest Enclosing Circle Visualization
Click to open website
このコードの主な特徴:
インタラクティブな操作
クリックで点を追加
ランダムな点の追加ボタン
クリア機能
アルゴリズム実装
2点を直径とする円の計算
3点を通る円の計算
最小包含円の計算(Brute-force approach)
ビジュアル表現
点:青色
包含円:緑色の輪郭
円の中心:オレンジ色
使い方:
キャンバスをクリックして点を追加
「ランダムな点を追加」ボタンで5つのランダムな点を追加
「クリア」ボタンですべての点を消去
アルゴリズムは以下のステップで動作します:
すべての2点の組み合わせについて、その2点を直径とする円を計算
すべての3点の組み合わせについて、その3点を通る円を計算
それぞれの円について、すべての点を含むかチェック
有効な円の中で最小の半径を持つものを選択
これにより、与えられた点列を包含する最小の円を求めることができます。