カーブの数学的表現

多項式は、Aliasで使用するカーブ表現の数学的な基礎です。

多項式

最も単純な数学的表現から始めましょう。幾何の授業で、y = 2x などの方程式で 2 次元の線を表現できると習ったのを覚えていらっしゃるでしょうか。それぞれのxの値に2を掛ければyの値が得られます。このxy値をグラフにプロットすると線になります。

この種類の方程式を一般化すると、ax + by = cとなります。等号の左側の式は多項式と呼ばれています。と呼ばれています。

y = x * x * xのように、xを自乗する複雑な式を書くこともできます。このような場合、xを自乗する回数だけ記述せずに、通常は回数を数えて上付き数字で表記します。上付き数字は「べき乗数」と呼ばれます。つまり、前述の式は、y = x3となります。

y = ax2 + bx + c(数学の授業では、これを2次方程式と呼ぶこともあります)のような、べき乗数を持つ多項式を作成できます。最初に出てくるxのべき乗数(数字の2)は、この関数のグラフが直線ではなく曲線であることを表します。

次数

多項式の次数とは、方程式の中で最大のべき乗数を指します。直線を表す式の最大のべき乗数は 1 です (式にべき乗数がない場合は、べき乗数1と同じになります)。

パラメトリック表現

カーブを方程式で表す一般的な方法は 2 つあります。陰関数表現では、すべての変数が、次のような 1 つの長い非線形方程式に統合されます: ax3 + by2 + 2cxy + 2dx +2ey +f = 0

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

パラメトリック表現は、この式をもっと短くて解きやすい方程式に書き直したものです。以下のように、1つの変数が残りの変数に対応した値に変換されます: x = a + bt + ct2 + dt3 + …y = g + ht + jt2 + kt3 + …

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

パラメトリックカーブ(parametric curve)は、空間を移動するポイントによる描画として表現することができます。任意の時点tでの移動するポイントのxとyの値を計算できます。

パラメータ値とライン上の各ポイントを関連付けるというコンセプトはさまざまなツールで採用されているため、これは特に重要なコンセプトになります。これは、カーブのU次元に対応しています。

複雑なカーブを作成する

カーブの方程式の次数が低いほど、カーブを簡単に表現できます。それでは、複雑なカーブを表現するときはどうしたらよいのでしょうか? カーブの次数を増やすという単純な答えも考えられますが、これはあまり効率的な方法とは言えません。カーブの次数を増やすほど、多量の計算処理が必要になってくるからです。さらに、7次を超えるカーブではどうしてもシェイプの振れが大きくなってしまい、カーブのインタラクティブなモデリングが実行できなくなってしまいます。

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

5次と7次のカーブは一部の製品のみ使用可能です。あるいは、有償オプションとしてお求めいただけます。

ただし、より高次数のカーブがまったく必要ないということではありません。5次と7次のカーブには、曲率が滑らかである、「テンション」があるといった利点があります。このため、自動車デザインの分野では頻繁に使用されます。

滑らかな接合

自動車業界で開発され、一般的な図形描画ソフトウェアの使用者によく知られている種類のカーブにベジェ曲線があります。ベジェ曲線は、それぞれが4つの制御頂点(開始点と終端、ならびに2つの「ハンドル」)を持つ3次カーブを結合したものです。ベジェ曲線の問題点は、セグメント間の結合が必ずしも滑らかではないということです。

NURBSでも採用されているこの問題の解決策は、現在のスパンの最初の制御頂点として前のスパンの最後の制御頂点を使用することです。この方法によって、カーブセグメント間の結合が滑らかになります (ベジェ曲線は、マルチノットのNURBSカーブを使って完全にシミュレートできます)。

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