曲線

ジオメトリ データ タイプには複数のタイプがありますが、最初に曲線について説明します。曲線には、曲がっているか、まっすぐか、長いか、短いかなど、その形状を表す一連のプロパティが存在します。線分からスプライン曲線まで、すべての曲線タイプは点という構成要素で定義されることに注意してください。

曲線タイプ

  1. 線分
  2. ポリライン
  3. 円弧
  4. 楕円
  5. NURBS 曲線
  6. ポリカーブ

曲線の概要

曲線という用語は通常、すべての曲がった形状を指します(直線を含みます)。 大文字の「C」で始まる「Curve」は、直線、円、スプライン曲線など、すべての形状タイプの親カテゴリです。より厳密に定義すると、曲線とは、(x=-1.26*t, y=t)などの単純な関数から微積分を使用する複雑な関数まで、さまざまな関数の集合に「t」を代入して指定することができるすべての点のことです。 操作する曲線の種類に関係なく、この「t」というパラメータが評価対象のプロパティになります。 また、形状の外観にかかわらず、すべての曲線には開始点と終了点があり、この開始点と終了点が、曲線の作成に使用される t の最小値と最大値に対応します。これを理解すると、曲線の方向についても理解できます。

曲線パラメータ

Dynamo では、曲線に対する t の値の範囲は 0.0 ~ 1.0 になります。これは、覚えておく必要があります。

すべての曲線には、曲線の記述や解析で使用されるさまざまなプロパティと性質があります。開始点と終了点の間の距離がゼロの場合は、「閉じた」曲線になります。また、すべての曲線には複数の制御点があります。これらの点がすべて一つの平面上に配置されている場合、その曲線は「平らな」曲線になります。一部のプロパティは曲線全体に適用されますが、曲線上の特定の点にのみ適用されるプロパティもあります。たとえば平面性はグローバル プロパティですが、特定の t 値における接線ベクトルはローカル プロパティです。

線分

線分は、最も簡単な形状の曲線です。 直線は曲線には見えないかもしれませんが、曲率がゼロであるというだけで、実際には曲線です。線分を作成する方法はいくつかあります。最も直感的な方法は、点 A から点 B までの線分を作成する方法です。この場合、線分 AB の形状が点間に描画されますが、数学的には、直線が両方向に無限に延びている状態になります。

線分

2 つの線分を接続すると、ポリラインが作成されます。ここで、制御点について簡単に説明します。どの制御点の位置を編集しても、ポリラインの形状が変化します。ポリラインが閉じている場合は、ポリゴンが作成されます。ポリゴンの辺の長さがすべて同じである場合、このポリゴンは正多角形になります。

ポリラインとポリゴン

円弧、円、楕円弧、楕円

ここからは、形状を定義するための複雑なパラメトリック関数を見ていきます。これまでは線分について説明しましたが、ここでは 1 つまたは 2 つの半径を設定することにより、円弧楕円弧楕円を作成します。 円弧と円または楕円の違いは、形状が閉じているかどうかだけです。

円と円弧

NURBS 曲線とポリカーブ

NURBS (非一様有理スプライン)は、単純な 2 次元の線分、円、円弧、長方形の形状から、複雑な 3 次元フリーフォームの有機的な曲線まで、あらゆる形状を正確にモデル化することができる数学的表現です。 その柔軟性(比較的少ない制御点で、次数の設定に基づいたスムーズな補間が可能)と精度(堅牢な数学演算による形状指定)により、イラストレーションやアニメーションから製造にわたる幅広いプロセスで使用することができます。

NURBS 曲線

次数: 曲線の次数により、制御点が曲線に与える影響力の範囲が決まります。次数が大きいほど、影響力の範囲も大きくなります。 次数は正の整数です。この数値は通常 1、2、3、または 5 ですが、任意の正の整数にすることができます。NURBS 線分とポリラインの次数は、通常は 1 です。ほとんどのフリーフォーム曲線の次数は、3 または 5 です。

制御点: 制御点は、次数 + 1 個以上の点を含むリストです。 NURBS 曲線の形状を変更するための最も簡単な方法は、その制御点を移動する方法です。

ウェイト: 制御点には、ウェイトと呼ばれる数値が関連付けられています。 ウェイトは、通常は正の数値です。曲線の制御点のすべてのウェイトの値が同じである場合(通常は 1)、その曲線は非有理曲線と呼ばれます。それ以外の場合は、有理曲線と呼ばれます。ほとんどの NURBS 曲線は、非有理曲線です。

ノット: ノットは、N を制御点の数としたとき、「次数 + N - 1」個の数値のリストとして表されます。 ノットはウェイトとともに使用され、作成される曲線上の制御点の影響力をコントロールします。ノットは、曲線上の特定の点でねじれを作成する場合などに使用します。

NURBS 曲線の次数

  1. 次数 = 1
  2. 次数 = 2
  3. 次数 = 3

次数の値が大きいほど、作成される曲線を補間するための制御点の数が多くなります。

次に、NURBS 曲線を作成する 2 つの方法を Dynamo で使用して正弦曲線を作成し、結果を比較してみましょう。

Dynamo における NURBS

  1. NurbsCurve.ByControlPoints ノードは、点のリストを制御点として使用します。
  2. NurbsCurve.ByPoints ノードは、点のリストを使用して曲線を描画します。 この画像に付属しているサンプル ファイルをダウンロードしてください(右クリックして[名前を付けてリンク先を保存...]を選択): Geometry for Computational Design - Curves.dyn。 すべてのサンプルファイルの一覧については、付録を参照してください。