マウス左ドラッグ: 回転 / マウス右ドラッグ: 移動 / マウスホイール: ズーム
Ctrlキー + マウス左ドラッグ: 制御点移動

6x4点のNURBS曲面を描画するビジュアライザーを作成しました。(メッシュにエラー有)
NURBS(Non-Uniform Rational B-Splines)はベジエ曲面よりも数学的に複雑ですが、より柔軟な曲面表現が可能です。
主な機能と特徴: NURBS曲面の実装 6x4の制御点を持つ3次NURBS曲面 制御点ごとに重み付け(現在はすべて1.0の等重NURBS) Cox-de Boor再帰アルゴリズムによるB-Spline基底関数の計算
ユーザーインターフェースと操作: マウス左ドラッグで回転 マウス右ドラッグで平行移動 マウスホイールでズーム Ctrlキー+左ドラッグで制御点を移動
表示モード切替(ワイヤーフレーム/陰影/両方) 技術的な実装 オープンな均一ノットベクトルを使用 法線計算は数値微分による近似 効率化のためのメモリ管理と計算の最適化 サーフェス品質 高解像度(30x30)のメッシュ分割でスムーズな表示 曲面の更新は制御点の移動に応じてリアルタイム 操作方法は前回と同じで、Ctrlキーを押しながら赤い制御点をクリック&ドラッグで移動できます。移動に応じてNURBS曲面がリアルタイムで更新されます。 波状の初期形状から始まるので、制御点を動かして様々な形状を作成できます。