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
です。
Alignment ¶
整列ガイドがない場合(すべてのAlignment系パラメータがゼロに設定されている場合)は、Target Field SOPはサーフェス上で最も滑らかなフィールドを探します。 この最も滑らかなフィールドは、 Global Rotation パラメータを使用してグロ―バルに回転された場合と同様の滑らかさになります。 整列基準は、サーフェス曲率、境界方向、オプションのユーザ指定のガイドベクトルを示したエレメント単位のベクトルのウェイト付けされた組み合わせです。 これら3つのベクトルコンポーネントは、お互いに混合される独立したチャンネルと考えることができます。
Weight
整列基準による接線フィールドの整列と、接線フィールド全体の滑らかさとのバランスを示したウェイト。 このウェイトを上げると、接線フィールドがより整列基準に準拠するようになり、 このウェイトを下げると、接線フィールドがより滑らかになります。 使用する値の範囲は0から1です。
Mask
接線フィールドがより厳格に整列されるエレメントにウェイトを付ける浮動小数点のアトリビュートを指定します。 使用する値の範囲は0から1です。
このチャネルは、2成分以上のベクトルフィールドでのみ利用可能です。
Note
このノードは、通常のベクトルフィールド(1成分ベクトルフィールド)をサーフェスの主曲率方向によってガイドすることはできません。 それぞれの主方向は2成分ベクトルフィールドです。 つまり、それぞれのポイントで示された曲率方向には指向性がありません。 このノードのアルゴリズムは、複数成分ベクトルフィールドを使用して、フィールド方向の数がガイド方向の数の倍数であるフィールドの構造をガイドすることしかできません。
Enable
全体の整列基準への曲率寄与を有効にします。
Weight
生成されるフィールドに影響を与える曲率方向のフォース。 使用する値は0以上です。
Mask
生成されるフィールドに影響を与える時に曲率フォースとして適用されるエレメント単位のスカラーウェイト。 値が大きいほど、曲率方向への整列が強くなり、値が小さいほど、曲率方向への整列が弱まります。 使用する値は0以上です。
Rotation
フィールド整列のすべての曲率寄与に適用されるオプションの回転。 使用する値の範囲は-180度から180度です。
Enable
全体の整列基準への境界寄与を有効にします。
Mode
境界寄与を包含的または排他的のどちらで適用するのかを定義します。 Add モードでは、境界ベクトルは、曲率ベクトルとガイドベクトルに結合されます。 Over モードでは、境界ベクトルは、曲率ベクトルを上書きします。
Weight
生成されるフィールドに影響を与える境界接線のフォース。 使用する値は0以上です。
Mask
生成されるフィールドに影響を与える時に境界フォースとして適用されるエレメント単位のスカラーウェイト。 値が大きいほど、境界方向への整列が強くなり、値が小さいほど、境界方向への整列が弱まります。 使用する値は0以上です。
Rotation
フィールド整列のすべての境界寄与に適用されるオプションの回転。 使用する値の範囲は-180度から180度です。
Enable
全体の整列基準へのカスタムガイド寄与を有効にします。
Mode
ガイド寄与を包含的または排他的のどちらで適用するのかを定義します。 Add モードでは、ガイドベクトルは、曲率ベクトルと境界ベクトルに結合されます。 Over モードでは、ガイドベクトルは、曲率ベクトルと境界ベクトルを上書きします。
Weight
生成されるフィールドに影響を与えるガイドベクトルのフォース。 使用する値は0以上です。
Mask
生成されるフィールドに影響を与える時にガイドフォースとして適用されるエレメント単位のスカラーウェイト。 値が大きいほど、ガイド方向への整列が強くなり、値が小さいほど、ガイド方向への整列が弱まります。 使用する値は0以上です。
Attribute Name
ガイドアトリビュートの名前。 このガイドアトリビュートは、フィールドがガイドされるポイント上またはプリミティブ上に非ゼロベクトルを割り当てるvector3型のアトリビュートでなければなりません。 このノードは、ゼロベクトルを無視して補間します。 非ゼロガイド値のポイントまたはプリミティブに割り当てられた出力方向は、入力値と完全に一致しない場合があり、その大きさも異なる場合があります。
Note
Tangent Fieldステートでは、ガイドベクトルとその結果のフィールドを比較することができます。
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のビューポートステートで使用され、変更してもオペレータは再クックされません。
Field
このノードのビューポートステートがアクティブな時、フィールドがジオメトリ上に表示されます。
マルチベクトルフィールドを表示すると、1つ目のインスタンスのベクトルフィールドは赤で描画され、その他のベクトルフィールドは青で描画されます。 プリミティブに対して計算されたフィールドを表示すると、頂点が4つ以上あるフェースの内部三角形のメンバー三角形ごとに、インスタンスセットが表示されます。
Field Scale Mode
視覚化されるフィールドベクトルの長さを指定します。
Prescale for Viewing: フィールドベクトルが見やすくなるように事前に計算されたスケールでベクトルを表示します。
Normalized: フィールドベクトルが単位長に設定されます。
None: フィールドベクトルが実際の長さで視覚化されます。
Field Scale
フィールドベクトルの現在の表示スケールを任意の係数で再スケールします。
デフォルト値は1
です。
Singularities
各特異点の近似位置にドットが表示されます。 赤のドットはプラスのインデックス付きの特異点、青のドットはマイナスのインデックス付きの特異点を示します。
Guides
アトリビュートで指定された非ゼロガイドベクトルを表示します。 これは、ガイドとその結果のフィールドを比較するのに役立ちます。
Guide Scale Mode
視覚化されるガイドベクトルの長さを指定します。
Prescale for Viewing: ガイドベクトルが見やすくなるように事前に計算されたスケールでベクトルを表示します。
Normalized: ガイドベクトルが単位長に設定されます。
None: ガイドベクトルが実際の長さで視覚化されます。
Guide Scale
ガイドベクトルの現在の表示スケールを任意の係数で再スケールします。
デフォルト値は1
です。
Examples ¶
TangentFieldExample Example for Tangent Field geometry node
このサンプルでは、Tangent Fieldノードをメッシュに対して使用する方法を説明しています。
TangentFieldGuidingExample Example for Tangent Field geometry node
このサンプルでは、接線フィールドをガイドするためのいくつかの方法を説明しています。
See also |