制御点と制御多角形の表示機能:
チェックボックスで制御点と制御多角形の表示/非表示を切り替え可能
制御点は赤い球体、制御多角形はred色の線で表示
すべての制御点は曲線に沿って均等に配置
視点の調整:
カメラの位置をz=15に設定して、より遠くから見られるように調整
ホイールズーム機能を追加し、マウスホイールで拡大・縮小が可能に
スプリングのサイズ調整:
スプリングを大きくして(半径2、高さ8)、より見やすく
チューブの太さも少し増加(0.15)
NURBS曲線の実装:
3次(degree=3)のNURBS曲線をThree.jsのCurveクラスを拡張して独自に実装
B-スプライン基底関数の計算を含む、完全なNURBS数学アルゴリズムの実装
ノットベクトルは開放型(端点で次数+1回繰り返す)で設定
NURBS固有の機能:
制御点、ノットベクトル、重みなどNURBSの基本要素を正確に実装
重みはすべて1.0としてB-スプラインと同等に設定(必要に応じて調整可能)
スパン探索アルゴリズムとde Boorのアルゴリズムを組み込み
NURBSの視覚的表現:
制御点を大きな赤い球体(直径0.15)で表示
制御多角形を黄色の線で明確に表示
曲線自体はチューブジオメトリで表現
>br>
デバッグ情報:
コンソールにNURBS曲線の情報(次数、制御点数、ノットベクトル)を出力
この実装では、NURBSの数学的な定義に忠実に従いながら、視覚的に分かりやすい表現を実現しています。実装したNURBSクラスは、より複雑なモデリングにも応用可能な基礎となります。
制御点とその多角形は、チェックボックスで表示/非表示を切り替えることができ、スプリング自体はラジオボタンでワイヤーフレームと陰影表示を切り替えられます。マウス操作による回転とホイールによるズームも引き続き使用可能です。