修正版では以下の変更を行いました: カメラ制御の追加(エラーが出る): X、Y、Z軸それぞれの位置を制御するスライダーを3つ用意 各スライダーの値を変更すると、カメラの位置が更新され、常に原点(0,0,0)を見るように設定 ベジエ曲面の実装を改善: ParametricBufferGeometryの代わりに標準的なBufferGeometryを使用して曲面を生成 これによりThree.jsのバージョン間の互換性を向上 マウスドラッグ操作の改善: 端点のドラッグ機能を維持しつつ、OrbitControlsへの依存を削除 基本的な機能は: 3次ベジエ曲面の表示 赤い線分と端点の表示(端点はマウスでドラッグ可能) ベジエ曲面と線分の交差判定(交差点は緑色の球体で表示) 交差判定結果のリアルタイム表示 カメラ視点をスライダーで調整できるようになっているので、様々な角度から観察できます。
ドラッグ操作の改善: カメラ視線方向に垂直な平面を使用して、より直感的なドラッグ操作を実現 端点を移動させたときの挙動がより自然になりました 交差点の可視化: 交差している場合は緑色の球体で交差点を明確に表示 交差していない場合は球体を非表示にします カメラ位置変更時の再判定: カメラ位置が変わったときにも交差判定を更新するようにしました この改良版では、より安定した交差判定が行われ、緑色の球体による交点表示も確実に動作するはずです。線分の端点をドラッグして、ベジエ曲面と交差させると緑色の球で交点が表示されます。