NURBS の背後にある数学

多項方程式

最も単純な数学方程式では、2 次元の直線を y = 2x などの式で表現できます。このタイプの方程式の一般化形式は、ax + by = c です。等記号の左側の式は、複数の項があるため多項式と呼ばれます。

さらに複雑な式では、変数自体を乗算することができ、2 次方程式 y = ax 2 + bx + c などのべき乗数を持つ多項式が生成されます。最初の x のべき乗数 2 は、この関数のグラフが直線ではなく曲線になることを示します。

次数

多項方程式の次数は、方程式内の最大の指数により決定します。

パラメトリック表現

カーブの方程式は、一般的に 2 つの方法で書くことができます。陰関数表現では、1 つの長い非線形方程式の中ですべての項を結合します。たとえば、次のようになります。ax 3 + by 2 + 2cxy + 2dx +2ey + f = 0。

この表現を使う場合、x と y の値を計算してグラフにプロットするには、非線形方程式全体を解く必要があります。

パラメトリック表現では、1 つの変数を他の変数の値で表すことによって、方程式を次のような短く解きやすい形式に書き換えます。x = a + bt + ct 2 + dt 3 + ... y = g + ht + jt 2 + kt 3 + ...

この表現を使うと、x と y の方程式が単純になります。この場合、必要なのは、xy を計算するためのカーブに沿ったポイントである t の値のみです。

パラメトリック カーブが描かれる様子は、空間内を移動する 1 つのポイントから思い浮かべることができます。どの時点の t においても、その移動するポイントの xy の値を計算できます。

これはとても重要な点です。パラメータ値を線上の各ポイントと関連付けるという概念は、多くのツールで利用されています。これは、カーブの U 次元に対応します。

NURBS を使用した複雑なカーブ タイプ

カーブ方程式の次数が低いほど、カーブは単純になります。では、複雑なカーブを描くにはどのようにしたらよいでしょうか。単純に考えれば、カーブの次数を高くすればよいのですが、これはあまり効率的ではありません。カーブの次数が高くなるほど、計算が複雑になります。また、次数が 7 よりも高いカーブでは、シェイプの振れが大きくなるため、インタラクティブなモデリングでは非現実的です。

解決策は、比較的低い次数(1 ~ 7)のカーブ方程式をセグメントとして結合して、より大きくて複雑な複合カーブを作成することです。カーブ セグメント(スパン)が結合するポイントをエディット ポイントと呼びます。

ただし、高次数のカーブを完全に無視するべきではありません。5 次および 7 次のカーブには、よりスムーズな曲率やより強い「張力」を表現できるなど、いくつかの利点があります。これらは、自動車デザインの分野でよく使われます。

スムーズな結合

カーブの次数によって、スパン間の結合の平滑性が決まります。次数 1 (1 次)カーブでは、結合部に位置連続性が保たれます。次数 2 (2 次)カーブでは、接線連続性が保たれます。次数 3 (3 次)カーブでは、曲率連続性が保たれます。