On this page | |
Since | 19.5 |
概要 ¶
Tangent Field SOPは、滑らかに可変する接線ベクトルフィールドをポリゴンサーフェス上に生成し、その接線ベクトルフィールドをPointアトリビュートデータまたはPrimitiveアトリビュートデータとして格納します。 接線フィールドは、疎らなガイド値で好きなように制御し、それらの値の間を滑らかに補間することができます。 さらに曲率方向や境界カーブを使って接線フィールドに影響を与えることができます。
ポイントに対して接線フィールドを計算させる場合、インスタンスベクトルは、ポイントが属するどれかのフェースの接線としてレポートされます。 この場合、ポイントでの複数成分ベクトルのインスタンスは、連続するフェース間の角度の合計の観点でみると、そのポイント基点で等間隔になります。
このノードをPolyFrameの代わりに使用すると、サーフェスメッシュのフェース全体で滑らかに可変するフレームを生成することができます。 これを行なうには、フェース上で4成分ベクトルフィールドを生成し、最初の2つのインスタンスのみをレポートします。 オプションで、フレームを曲率方向または境界カーブと揃えることもできます。
メモ ¶
-
通常のベクトルフィールドの生成に加えて、このノードは、 ラインフィールド (RoSy 2成分ベクトルフィールド)または クロスフィールド (RoSy 4成分ベクトルフィールド)といった、 回転対称(RoSy)の複数成分ベクトルフィールド のインスタンスも生成することができます。 そのようなフィールドは、ポイントの接線平面で等間隔に回転する複数の接線ベクトル(クロスフィールドの場合は4成分ベクトル)を、各ポイントに割り当てるようなものだと考えることができます。 これらのベクトルのことを複数成分ベクトルのインスタンスと呼びます。 複数成分ベクトルフィールドとして見ると、これらのベクトルは同じオブジェクトを表現します。 接線平面で接線ベクトルを360度回転させてもベクトルが変わらないのと同じように、2成分ベクトルフィールドを360/2(=180)度の倍数で回転させても、または、4成分ベクトルフィールドを360/4(=90)度の倍数で回転させても、同じ複数成分ベクトルが得られます。 言い換えれば、2成分ベクトルフィールドは、ベクトルと逆ベクトルを区別しないベクトルフィールドのようなものです。 同様に、4成分ベクトルフィールドは、ベクトルを90、180、270度回転させたものと同じだと見なすことができるベクトルフィールドです。 このノードは、各エレメントのすべてまたは一部のインスタンスベクトルをレポートすることで、複数成分ベクトルフィールドを表現します。 例えば、サーフェスパッチ上で滑らかに可変するローカルUV座標軸ペアは、4成分ベクトルフィールドの最初の2つのインスタンスベクトルと考えることができます(残りの2つはマイナスのUおよびV軸)。 このように、このノードを使用すると、ジオメトリ上で滑らかに可変するフレームフィールドを生成することが可能になります。
-
一般的には、サーフェス全体ですべての場所を滑らかに可変する非ゼロのフレームフィールドにすることはできません。 例えば、接続性や変形に関わらず、変形した球上でそのようなフレームフィールドを作成することは不可能です(毛の生えたボールの定理(毛の生えた球を櫛で完全にとかすことはできない))。 しかし、このノードの出力は、サーフェス全体に広がる滑らかなフィールドの離散サンプル(ポイントまたはポリゴン毎に1サンプル)であり、このより大きいフィールドは、一部の(サンプル以外の) 特異な 場所ではゼロになります。 フィールドをポイントに対して計算した場合には、このような特異点は一部のフェース内部に位置することになります(そのようなフェースは特異フェースと呼びます)。 フィールドをプリミティブに対して計算した場合には、特異点は頂点になります。 ポイントまたはフェースでの複数成分ベクトルフィールドのインスタンスのインデックス化は任意に実行されます。 このノードは、すべてのエレメント上で同じインデックスを持つ個々のインスタンスが、できる限り不連続性のない、滑らかに可変するベクトルフィールドとして表示されるよう、最初のインスタンスベクトルを選択しようと試みます。 しかし、これは同様の証明可能な制限事項に反することになるので、不連続性を完全に回避することは必ずしも可能なわけではありません。
-
このノードは入力のジオメトリを修正しません。 しかし、このノードの計算は、必ず三角形化されたサーフェスに対して実行されます。 入力ジオメトリにノンマニフォールド(非多様体)なエッジまたはポイントがある場合、その部分に細い切れ目や穴が残っているものとして扱われます。 4つ以上の頂点を持つポリゴンフェースは、内部的に三角形化されます。 その内部的に三角形化された入力フェースに対してレポートされる結果には、メンバーの三角形からどれか1つの三角形が任意に取得されます。 言い換えれば、このノードは平均化のような、個々のメンバーの三角形から取得した結果を組み合わせることはしません。 この理由は、一般的に複雑なポリゴンではメンバーの三角形間でバリエーションが大きく異なるからです。つまり、平均値が個々のメンバーの値すべてを示すのに向かないからです。 したがって、このノードを使用する前にサーフェスを三角形化することで、良い結果が得られます。
パラメータ ¶
Group
フィールドアトリビュート値が設定される入力ジオメトリ内ののプリミティブまたはポイントのサブセット。 空っぽのままにすると、入力内のすべての閉じたポリゴンのアトリビュート値が影響を受けます。
Carried On
フィールドをポイントまたはプリミティブのどちらで生成するのかを指定します。
デフォルト値はPoints
です。
Directions
出力フィールドの方向の数。
通常のベクトルフィールドには1
を設定します。
デフォルト値は4
です。
使用頻度の高い値は1
, 2
, 4
で、稀に6
を使用することもあります。
Global Rotation
生成されるすべての方向を、それぞれの接線空間で均一に回転させることができます。
デフォルト値は0
です。
Guides ¶
ガイドがない場合(すべてのガイド強度パラメータがゼロに設定されている場合)は、Target Field SOPはサーフェス上で最も滑らかなフィールドを探します。 この最も滑らかなフィールドは、 Global Rotation パラメータを使用してグロ―バルに回転された場合と同様の滑らかさになります。
Curvature
生成されるフィールドに影響を与える曲率方向のフォース。 フィールドが Maximum Direction または Minimum Direction のどちらの主曲率方向に従うのかを指定することができます。
このパラメータは、2成分以上のベクトルフィールドにのみ利用可能です。 4成分ベクトルフィールドに関しては、2つの主方向はお互いに直交で、フィールドをどちらの方向に揃えても同じ効果になるため、この選択は4成分ベクトルフィールドでは何も関係しないことに注意してください。
デフォルト値は0.1
です。
Note
このノードは、通常のベクトルフィールド(1成分ベクトルフィールド)をサーフェスの主曲率方向によってガイドすることはできません。 それぞれの主方向は2成分ベクトルフィールドです。 つまり、それぞれのポイントで示された曲率方向には指向性がありません。 このノードのアルゴリズムは、複数成分ベクトルフィールドを使用して、フィールド方向の数がガイド方向の数の倍数であるフィールドの構造をガイドすることしかできません。
Boundary
生成されるフィールドに影響を与える境界接線のフォース。
接線の向きは、それぞれの境界ループでClockwise
(時計回り)またはCounterclockwise
(反時計回り)のどちらかの方向になります。
Counterclockwise
(反時計回り)に設定すると、サーフェスはループの走査の方向の右側になります。
同様に、境界方向がそれぞれのサーフェスでInward
(内側)またはOutward
(外側)を向くように選択することで、フィールドと境界を直交させることができます。
デフォルト値は0
です。
Note
サーフェスに複数の境界がある場合、1成分ベクトルフィールドのガイドには、これらのオプションはいずれも適さないです。 その理由は、一部の境界は時計回りまたは内向きで、別の境界は反時計回りまたは外向きというのが自然だからです。 例えば、一般的なモデルには、ソース(内向きの方向)のように動作する境界と、シンク(外向きの方向)のように動作する境界があります。 このような細かい制御には、アトリビュートガイドを使用します。
Attribute
ガイドアトリビュートの影響力。 ガイドアトリビュートは、フィールドがガイドされるポイントまたはプリミティブに対して非ゼロのベクトルが割り当てられた3成分ベクトルアトリビュートでなければなりません。
このノードは、ゼロ値を無視して補間します。 非ゼロのガイド値を持つポイントまたはプリミティブに割り当てられた出力方向は、入力値とは完全に一致しない場合があり、その方向の大きさが大きく異なる場合があることに注意してください。
デフォルト値は0
です。
Attribute Name
ガイドアトリビュートの名前。
Output Attributes and Groups ¶
Field Attribute
生成されるフィールドアトリビュート(s)の名前。
生成される方向の数に応じて、個々の方向アトリビュート名の後にインデックス番号が追加されます。
デフォルト値はfield
です。
Normalize
有効にすると、生成されるフィールドベクトルすべてが単位長になります。 無効の場合、滑らかに可変する大きさで計算した結果としてレポートされます。 通常、大きさは特異点の付近で減少します。
Generate
アトリビュートとして出力内に生成されるフィールドインスタンスベクトルの数。 方向は、反時計回りの順に0、1…と番号付けされます。
All Directions (default)
すべての方向が生成されます。 例えば、4成分ベクトルフィールドでは4つの方向アトリビュートが生成されます。
One Direction Per Symmetric Pair
方向の数が偶数の場合、これは向かい合った2方向の1つ目の方向のみを生成します。 例えば、4成分ベクトルフィールドでは各エレメントで座標フレーム(一対の軸ベクトル)が生成されます。
Only One Direction
1つ目の方向のみがレポートされます。
Singular Group
特異な要素のリスト(フィールドがプリミティブ上に生成されている場合はポイント、フィールドがポイント上に生成されている場合はプリミティブ)がグループとしてレポートされます。
デフォルト値はsingular
です。
Positive Singular Group
プラスの特異な要素のリスト(フィールドがプリミティブ上に生成されている場合はポイント、フィールドがポイント上に生成されている場合はプリミティブ)をグループとしてレポートします。
デフォルト値はpositive_singular
です。
Negative Singular Group
マイナスの特異な要素のリスト(フィールドがプリミティブ上に生成されている場合はポイント、フィールドがポイント上に生成されている場合はプリミティブ)をグループとしてレポートします。
デフォルト値はnegative_singular
です。
Discontinuities
方向の数が2個以上の時、これは、フィールド方向インデックス内で不連続性を示すエッジグループがレポートされます。
ほとんどの箇所では、個々のフィールド方向ベクトルは、滑らかに可変するベクトルフィールドのように動作します。 しかし、これはグローバルに実行できないことがよくあり、個々の方向が(例えば、90度)ジャンプしているように見える箇所があるはずです。 ポイント上に生成されるフィールドの場合、これらのエッジはエッジの一方の端からもう一方の端へのジャンプを示します。 フェース上のフィールドの場合、これらのエッジはエッジの両側のフェース間のジャンプを示します。
デフォルト値はdiscontinuities
です。
Visualization ¶
これらのパラメータは、Tangent Field SOPのビューポートステートで使用され、変更してもオペレータは再クックされません。
Visualize Field
このノードのビューポートステートがアクティブな時、フィールドがジオメトリ上に表示されます。
マルチベクトルフィールドを表示すると、1つ目のインスタンスのベクトルフィールドは赤で描画され、その他のベクトルフィールドは青で描画されます。 プリミティブに対して計算されたフィールドを表示すると、頂点が4つ以上あるフェースの内部三角形のメンバー三角形ごとに、インスタンスセットが表示されます。
Display Normalized
計算値が単位長さでない場合でも、すべてのフィールドベクトルが単位長で表示されます。
Prescale for Viewing
フィールドベクトルを識別しやすくするために、ベクトルが事前計算されたスケールで表示されます。
Vector Scale
現在表示しているベクトルのスケールを、任意の係数で再スケールします。
デフォルト値は1
です。
Show Singularities
各特異点の近似位置にドットが表示されます。 赤のドットはプラスのインデックス付きの特異点、青のドットはマイナスのインデックス付きの特異点を示します。
See also |