On this page | |
Since | 18.0 |
概要 ¶
このノードは、2番目の入力のカーブの接線に基づいて向きを計算しつつ、Upベクトルと追加の回転を指定した色々なオプションを使って、そのカーブ上のポイント上に1番目の入力のジオメトリをコピーします。 これらの向きは、Orientation Along CurveノードとSweepノードの向きと同じです。
これは、すべてのポリゴン(ポリゴンが閉じていても)をカーブとして扱います。
パラメータ ¶
Source Group
コピー元のソースとなる(1番目の入力の)プリミティブまたはポイントのサブセット。 Group SOPを使えば、グループを作成することができます。
Source Group Type
Source Group で指定したグループのタイプ。
Guess from Group が指定されていて、且つ、そのグループタイプが曖昧だった場合、 Group に指定されたグループからそのグループタイプが推測されます。
Curve Group
2番目の入力内のグループ。ソースのプリミティブまたはポイントがコピーされてトランスフォームされる向きは、このグループから計算されます。
Piece Attribute
整数または文字列のターゲットアトリビュートの名前。これは、ソースのPoint/Primitiveアトリビュートに呼応し、各ターゲットポイントにコピーされるソースの部分を指定します。 このターゲットのアトリビュートと同じ値を持ったすべてのソースのポイントまたはプリミティブが、そのターゲットポイントにコピーされます。 ターゲットのアトリビュートが整数アトリビュートで、且つ、ソースにそのアトリビュートが存在しなかった場合、ソースからその整数値のプリミティブ番号を持った単一プリミティブが各ターゲットポイントにコピーされます。
Pack and Instance
入力のソースジオメトリをパックジオメトリプリミティブにパック化した後でコピーを行ないます。 これによって、入力ジオメトリは、コピー毎に複製されるのではなくて、共有化(インスタンス化)されます。
Source Group または Piece Attribute が指定されている場合、ソースジオメトリのサブセットがパックジオメトリプリミティブにパック化されます。
Pivot Location
パックプリミティブで参照されるポイントのオフセットを初期化する方法を指定します。
Display As
指定したパックプリミティブ用のビューポートLOD。
Frame ¶
Tangent Type
頂点毎に接線を計算する全体的なメソッド。
Transform Using Curve Point Attributes が有効で、入力にN
(vector)、orient
(quaternion)、rot
(quaternion)、transform
(3×3または4×4のmatrix)のどれかのPointアトリビュートが存在すれば、 Z Axis (Ignore Curve) 以外のタイプは無視され、代わりにこれらのアトリビュートで決まったトランスフォームのZ軸が接線方向に使用されます。
Stretch Around Turns オプションは、この Tangent Type のタイプに関係なく Average of Edge Directions 接線に基づいて(他のタイプでは伸縮方向は定義できないので)、伸縮量と伸縮方向を計算します。
以下のオプションの説明と画像を参照してください。
Average of Edge Directions
前のエッジベクトルと次のエッジベクトルの正規化した方向の平均。
Central Difference
前のエッジベクトルと次のエッジベクトルを正規化していない方向の平均。 これは、Trailノードの Velocity Approximation の Central Difference オプションと同様です。
Previous Edge
前のエッジの方向。
Next Edge
次のエッジの方向。
Z Axis (Ignore Curve)
曲線の向きに関係なく、接線がZ軸として選択されます。
Make Closed Curve Orientations Continuous
有効にすると、閉じた曲線を周って累積したロール(ねじれ)は、最終エッジで急回転しないように、その曲線が1周まわって分散するように打ち消されます。 平面曲線では、曲線を1周して累積するような特有のロールはありませんが、( Apply Roll or Twist が有効な時)これは、 Partial Twist オプションにも適用されるので、全周の捻じりではない捻じりも、全周の捻じりになるように丸められます。
Extrapolate End Tangents
有効にすると、終端(始端を含む)での接線は、 Tangent Type に基づいて外挿され、そのタイプで選択されるエッジは終端エッジ方向ではなく、その終端に近い2つのエッジから選択されます。 これは、曲線で円弧を表現しようとした時に、終端の向きが期待したように回転させたい場合に非常に役立ちます。上記の画像を参照してください。
Transform Using Curve Point Attributes
有効にすると、主にここでアトリビュートを指定するのと同じようにP
、N
、up
、orient
、rot
、trans
、pivot
、pscale
、scale
、transform
のどれかのカーブ入力のPointアトリビュートを使って各トランスフォームが形成されます。
N
が存在していて、up
、orient
、rot
、transform
が存在しなかった場合、N
が曲線の接線として使用され、残りの回転は通常通りに計算されます。
up
が存在していて、N
、orient
、rot
、transform
が存在しなかった場合、接線が通常通りに計算され、up
が各頂点のUpベクトルとして使用され、その後に Apply Roll or Twist が適用されます。
Target Up Vector
接線方向を軸とした回転の自由度を拘束する固定軸となる曲線毎のUpベクトル。
曲線が平面上にある場合、 Curve Normal オプションによって、そのUpベクトルはその平面の法線方向になります。
しかし、その曲線が直線になっていると、このオプションは固定軸のUpベクトルの代替値としてY軸を使用します。
Attribute オプションでは、Primitive/Detailアトリビュートを使って、曲線毎にUpベクトルを選択することができます。
すべてのカーブポイント上で個別にUpベクトルを指定したいのであれば、代わりに Transform Using Curve Point Attributes を使用してください。
曲線上にup
という名前のPointアトリビュートを用意すれば、この Target Up Vector が無視されます。
Target Up Vector at Start (else Average)
有効にすると、曲線毎のロールは、最初の頂点のUpベクトルができるだけ Target Up Vector に近くなると同時にさらに接線ベクトルに垂直になるように選択されます。 無効にすると、曲線毎のロールは、最初の頂点ではなく、すべての頂点のUpベクトルの平均が適用されます。 Use Target End Up Vector Option を使用する場合には、これを有効にしてください。
Use Target End Up Vector
これを有効、且つ、 Target Up Vector at Start を有効にすると、曲線毎の捻じりは、始端のUpベクトルに影響を与えることなく終端のUpベクトルができるだけ Target Up Vector に近くなるように調整されます。 Target Up Vector が Attribute または Custom の時、終端Upベクトルとは別に始点Upベクトルを指定できるように Start Up Attribute パラメータや Start Up Vector パラメータがさらに表示されます。
Start Up Attribute
Target Up Vector が Attribute の時、ここには、曲線毎の Target Up Vector に使用するPrimitive/Detailアトリビュートの名前を指定します。 Target Up Vector at Start を有効にすると、曲線の始端における Target Up Vector を指定することができます。 Target Up Vector at Start を無効にすると、曲線毎に沿った平均のUpベクトルを Target Up Vector に使用することができます。
End Up Attribute
Target Up Vector が Attribute 、且つ、 Use Target End Up Vector が有効な時、ここには、曲線の終端における Target Up Vector を設定するためのPrimitive/Detailアトリビュートの名前を指定します。 曲線毎の捻じりは、始端のUpベクトルに影響を与えることなく終端のUpベクトルができるだけ Target End Up Vector に近くなるように調整されます。
Start Up Vector
Target Up Vector が Custom の時、ここには、曲線毎に使用する Target Up Vector を指定します。 Target Up Vector at Start を有効にすると、これは、曲線の始端における Target Up Vector が使用されます。 Target Up Vector at Start を無効にすると、これは、曲線毎に沿った平均のUpベクトルを Target Up Vector に使用することができます。
End Up Vector
Target Up Vector が Custom の時、ここには、曲線毎に使用する Target End Up Vector を指定します。 曲線毎の捻じりは、始端のUpベクトルに影響を与えることなく終端のUpベクトルができるだけ Target End Up Vector に近くなるように調整されます。
Additional Rotations ¶
Rotate Order
以下のPitch(X軸/従法線方向の軸回転)、Yaw(Y軸/Upベクトルの軸回転)、RollまたはTwist(Z軸/接線方向の軸回転)のオプションが複数有効になっている場合にそれらを適用する順番。 PitchとYawは、向きに対して実質的に事前トランスフォームを適用して使用するのに役立ちます。 その理由で、PitchとYawはデフォルトでRollまたはTwistよりも先に適用されるようになっています。
これらの回転は、曲線に基づいたトランスフォームの前に実質的に適用されるので、結局の所、曲線フレームの空間での回転の効果と同じです。
Apply Roll or Twist
有効にすると、(上記で計算された)接線方向を基準としたRoll回転を適用するための以下のパラメータが有効化されます。
Roll
Apply Roll or Twist が有効な場合に、すべての向きに適用される接線方向を軸とした回転(単位は度)です。
Twist Per
以下で指定された捻じり値から(360*(Full Twists) + (Partial Twist))
の総捻じり量を適用する方法。
以下の説明と画像を参照してください。
Per Edge
エッジ毎に、この総捻じり量を累積的に適用します。 そのため、例えば6つのエッジに沿ってそれぞれ Partial Twist の60度が累積的に適用されて、結果として合計360度の捻じりになります。 この場合では、単一エッジでの全周捻じりは元の向きに戻るわけですから、 Full Twists は何の効果もありません。
Per Unit Distance
エッジの長さに沿って比例して“ワールド単位”毎に、この総捻じり量を累積的に適用します。
Scale by Attribute
Twist Ramp Attribute パラメータで指定した名前のアトリビュート(ここにはPoint/Vertex/Primitive/Detailアトリビュートを指定することができます)の値とこの総捻じり量(単位は度)を乗算した値を頂点毎に適用します。 この乗算した値は、捻じり量を累積させるのではなくて、頂点単位でのRollとして適用されます。 そのため、曲線に沿ってアトリビュート値を0から1に上げていけば、この総捻じり量が最終の捻じり量と同じになります。
Per Full Curve by Edges
総捻じり量を曲線のエッジの数で均等に割った捻じり量をエッジ毎に累積的に適用します。 例えば、6つのエッジを持った曲線に沿って Partial Twist に60度を指定した場合、エッジ毎に10度ずつ回転が加わっていきます。
Per Full Curve by Distance
総捻じり量を曲線のエッジの長さに比例させて分配した捻じり量をエッジ毎に累積的に適用します。
Full Twists
( Twist Per パラメータで設定された間隔毎に)追加する全周捻じりの回数。 これは、単に便宜的に用意されているだけです。 この回数に360を乗算した値を Partial Twist の量に加算します。 Twist Per が Per Full Curve by Edges または Per Full Curve by Distance の場合、これは、曲線毎の全長間の全周回数に相当します。
Partial Twist
( Twist Per パラメータで設定された間隔毎に)追加する接線方向を軸とした捻じり量(単位は度)。 この量は、360度と Full Twists の回数を乗算した量に追加されます。
Twist Ramp Attribute
Twist Per が Scale By Attribute の時、ここには、Point/Vertex/Primitive/Detailアトリビュートの名前を指定します。 このアトリビュートの値が総捻じり量( Full Twists と Partial Twist の合計量)に乗算されます。 この乗算した値は、捻じり量を累積させるのではなくて、頂点単位でのRollとして適用されます。 そのため、曲線に沿ってアトリビュート値を0から1に上げていけば、この総捻じり量が最終の捻じり量と同じになります。
Apply Yaw
有効にすると、(上記で計算された)Upベクトルを軸としたYaw回転を適用するための以下のパラメータが有効化されます。
Yaw
Upベクトルを軸とした回転(単位は度)です。 Apply Yaw が有効になっていると、すべての向きに適用されます。
Yaw Per
以下で指定された Incremental Yaw 値を適用する方法。
Per Edge
エッジ毎に、この Incremental Yaw を累積的に適用します。 そのため、例えば6つのエッジに沿ってそれぞれ Incremental Yaw の60度が累積的に適用されて、結果として360度のYaw(Upベクトルを軸としたスピン)になります。
Per Unit Distance
エッジの長さに沿って比例して“ワールド単位”毎に、この Incremental Yaw を累積的に適用します。
Scale By Attribute
Yaw Ramp Attribute パラメータで指定した名前のアトリビュート(ここにはPoint/Vertex/Primitive/Detailアトリビュートを指定することができます)の値とこの Incremental Yaw を乗算した値を頂点毎に適用します。 この乗算した値は、 Incremental Yaw を累積させるのではなくて、頂点単位でのYawとして適用されます。 そのため、曲線に沿ってアトリビュート値を0から1に上げていけば、 Incremental Yaw 値が最終のYaw値と同じになります。
Per Full Curve by Edges
Incremental Yaw を曲線のエッジの数で均等に割ったYaw値をエッジ毎に累積的に適用します。 例えば、6つのエッジを持った曲線に沿って Incremental Yaw に60度を指定した場合、エッジ毎に10度ずつ回転が加わっていきます。
Per Full Curve by Distance
Incremental Yaw を曲線のエッジの長さに比例させて分配したYaw値をエッジ毎に累積的に適用します。
Incremental Yaw
Yaw Per パラメータで設定された間隔毎に適用される“Up”ベクトルを軸とした回転(単位は度)です。
Yaw Ramp Attribute
Yaw Per が Scale By Attribute の時、ここには、Point/Vertex/Primitive/Detailアトリビュートの名前を指定します。 このアトリビュートの値が Incremental Yaw に乗算されます。 この乗算した値は、Yawを累積させるのではなくて、頂点単位でのYawとして適用されます。 そのため、曲線に沿ってアトリビュート値を0から1に上げていけば、 Incremental Yaw 値が最終のYaw値と同じになります。
Apply Pitch
有効にすると、(上記で計算された接線ベクトルとUpベクトルに垂直な)“Out”ベクトルを軸としたPitch回転を適用するための以下のパラメータが有効化されます。
Pitch
(接線ベクトルとUpベクトルに垂直な)Outベクトルを軸とした回転(単位は度)です。 Apply Pitch が有効になっていると、すべての向きに適用されます。
Pitch Per
以下で指定された Incremental Pitch 値を適用する方法。
Per Edge
エッジ毎に、この Incremental Pitch を累積的に適用します。 そのため、例えば6つのエッジに沿ってそれぞれ Incremental Pitch の60度が累積的に適用されて、結果として360度のPitch(Outベクトルを軸としたタンブル)になります。
Per Unit Distance
エッジの長さに沿って比例した“ワールド単位”毎に、この Incremental Pitch を累積的に適用します。
Scale By Attribute
Pitch Ramp Attribute パラメータで指定した名前のアトリビュート(ここにはPoint/Vertex/Primitive/Detailアトリビュートを指定することができます)の値とこの Incremental Pitch を乗算した値を頂点毎に適用します。 この乗算した値は、 Incremental Pitch を累積させるのではなくて、頂点単位でのPitchとして適用されます。 そのため、曲線に沿ってアトリビュート値を0から1に上げていけば、 Incremental Pitch 値が最終のPitch値と同じになります。
Per Full Curve by Edges
Incremental Pitch を曲線のエッジの数で均等に割ったPitch値をエッジ毎に累積的に適用します。 例えば、6つのエッジを持った曲線に沿って Incremental Pitch に60度を指定した場合、エッジ毎に10度ずつ回転が加わっていきます。
Per Full Curve by Distance
Incremental Pitch を曲線のエッジの長さに比例させて分配したPitch値をエッジ毎に累積的に適用します。
Incremental Pitch
Pitch Per パラメータで設定された間隔毎に適用される“Out”ベクトルを軸とした回転(単位は度)です。
Pitch Ramp Attribute
Pitch Per が Scale By Attribute の時、ここには、Point/Vertex/Primitive/Detailアトリビュートの名前を指定します。 この乗算した値は、Pitchを累積させるのではなくて、頂点単位でのPitchとして適用されます。 そのため、曲線に沿ってアトリビュート値を0から1に上げていけば、 Incremental Pitch 値が最終のPitch値と同じになります。
Scales and Shears ¶
Normalize Scales
有効にすると、 Transform Using Curve Point Attributes (例えば、pscale
、scale
、transform
のアトリビュート)からのスケールもシアーも打ち消されます。
Uniform Scale
このスケールは、 Normalize Scales の後のトランスフォームに適用されます。
Stretch Around Turns
有効にすると、これは、曲線の曲がり角を曲がる方向にトランスフォームを伸ばします。 これは主にSweepノードで断面を使用する際に、その断面がエッジに沿って潰れたような見た目にならないようにするのに使用します。 これがSweepノードで普段あなたが求めている挙動だと思いますが、他の用途ではあまり使用しません。
Max Stretch
Stretch Around Turns が有効な場合、ここには、トランスフォームを伸ばす最大量を指定します。 これによって、曲線が1つの曲がり角でほぼ逆方向を向く時に非常に遠くの方に伸ばされるのを回避することができます。
Attributes ¶
Reset Attributes from Target
Attributes from Target パラメータにデフォルトの挙動を設定します。
Attributes from Target
以下のアトリビュートフィールドの値に応じて、ターゲットカーブのポイントのアトリビュートをコピー上にコピーします。
Apply to
この行のターゲットPointアトリビュートを、出力ポイント/頂点/プリミティブに適用するかどうかを指定します。 単一のターゲットPointアトリビュートは、1タイプの出力エレメントにのみ適用することができます。
by
この行のターゲットPointアトリビュートを適用する方法。 アトリビュート値は、コピー、乗算、加算、ソースアトリビュートから減算のどれかで適用することができます。 “Nothing”オプションを選択すれば、アトリビュートの適用方法を示した上の行をオーバーライドすることができます。 合致するソースアトリビュートが存在しなかった場合、“Multiplying”オプションと“Adding”オプションはコピーに、“Subtracting”オプションは(ゼロからの減算なので)マイナス値のコピーになります。 “Multiplying”、“Adding”、“Subtracting”は、数値アトリビュートとグループアトリビュートにのみ適用され、他のアトリビュートはコピーされます。 グループアトリビュートに関しては、その演算は、それぞれ“積”、“和”、“差”に相当します。
Attributes
この行で合致されるターゲットPointアトリビュート名のパターン。
入力 ¶
Geometry to Copy
コピーするジオメトリ。
Target Curves to Copy to
ソースジオメトリをこのジオメトリ内のカーブのポイント上にコピーします。
See also |