On this page |
概要
エレメントを複数のグループに属させることが可能です。グループは、パラメータエディタのほとんどの場所で、オペレータが作用する入力ジオメトリの箇所を指定することができます。
また、順序付きのグループも作成することが可能です。そのグループを作成するには、 Ordered チェックボックスを有効にします。
このオペレータは非常に強力で、同類のジオメトリをまとめるのに最適です。
例えば、3次元の建築モデルのドアを構成しているプリミティブジオメトリすべてを、まとめてグループ化すれば、Transformノードを使って、同時にスケールとサイズ変更ができます。Groupは、ほとんどのフィルターノードと組み合わせて動作します。
グループ名の指定子は、グループ指定でパターンマッチングを使う時に非常に威力を発揮します。
Group Geometryの使い方
Tip
エッジ選択のホットキーを使ってグループ化する時は、選択を完了してから⇥ Tabを押し(Enterを押すのではなく)、タブメニューから Group Geometry オペレーションを選択します。
Pointアトリビュートに基づいたグループの作成
Combine タブとグループ指定の構文を使えば、Point/Primitiveアトリビュートに基づいてグループを作成することができます。
例えば、0
より上のY座標を持つポイントすべてを含むグループを作成するには:
-
Groupノードのパラメータエディタで、 Combine タブをクリックします。
-
Group フィールド( Combine Entity の下)の左側に、作成したいグループの名前を設定し、真ん中にある
等号ボタンをクリックし、右側に
@P.y>0
を設定します。
この例のP
は、ポジションベクトルアトリビュートの名前です。.y
は、そのベクトルのYコンポーネントであり、>0
は、そのコンポーネントが0より大きいポイントを選択します。詳細は、@
グループ指定の構文を参照してください。@
構文にはスペースを使うことができないことに注意してください。
入力
Source geometry
グループを作成するジオメトリ。
Bounding object
境界ジオメトリ(境界ジオメトリで選択したポイントグループに対してのみ動作します)。
すべてのジオメトリを受け入れます。
パラメータ
Create
Group Name
作成するグループ名。
Entity
プリミティブ、ポイント、エッジのどのグループを作成するかどうか指定します。
Geometry Type
グループで許可するプリミティブの種類。
Merge Operation
新規作成グループと既存グループ間の干渉を解決する方法。
Replace Existing
新規作成グループが既存グループを置き換えます。
Union With Existing
新規作成グループと既存グループを結合した内容をグループ化します。
Intersect With Existing
新規作成グループと既存グループの共通内容をグループ化します。
Subtract From Existing
既存グループから新規作成グループを引いた内容をグループ化します。
Number
Enable
番号によるグループ化を有効にします。
Create Ordered
グループ内のポイント/プリミティブを入力順に並べ替えます。これはスキニングで役に立ちます。
Operation
パターン、範囲、エクスプレッションでグループ化します。
Filter Expression
これは、ポイント/プリミティブ毎に評価されます。評価がtrueになったエレメントがグループに追加されます。 これは、ポイントとプリミティブのオペレーションのローカル変数すべてをサポートしています。
現在のところ、エッジグループはエクスプレッションでサポートされていません。
Note
エクスプレッションに一致したポイントとプリミティブは、他のタブに関係なく、最終的なグループになります。
Pattern
グループ化するパターンを入力します。
このフィールドでは、エッジパターンも指定することができます:
コード |
意味 |
---|---|
|
プリミティブ番号n内のエッジすべて。 |
|
ポイント番号n/ポイント番号nを持つエッジ。 |
|
プリミティブnのエッジ番号m。 |
|
ポイント番号aとポイント番号b間のエッジ。 |
Start
グループ化する範囲の開始番号。エッジグループに関しては、その範囲がプリミティブのインデックスとして解釈されます。
End
グループ化する範囲の終了番号。エッジグループに関しては、その範囲がプリミティブのインデックスとして解釈されます。
Select _
of _
#個中#個毎にプリミティブ/ポイントをグループ化します。エッジは、ここではプリミティブ番号でグループ化されます。
Bounding
Enable
境界ボリュームによるグループ化を有効にします。
Bounding Type
境界ボリュームの形状。
Size
境界ボリュームのサイズ。
Center
境界ボリュームの中心。
Iso
グループ化で使うボリュームのアイソサーフェス。これより小さいボリューム値のポイントをグループ化します。 SDFボリュームに対しては、値を0にするのが良いです。Fogボリュームに対しては、値を0.5にして、 Invert Volumes をオンにすれば良い結果が得られます。
Invert Volume
ボリュームの内側の定義を反転します。
Include Entities Not Wholly Contained
境界オブジェクトで完全に含まれていないエンティティを含めます。
Normal
Enable
法線によるグループ化を有効にします。
Direction
グループ化する法線方向。
Spread Angle
グループ化する法線方向の許容角度。
Backface from
このオブジェクト方向に向いていないプリミティブをグループ化します。
Note
法線によるグループ化とは違い、このオペレーションは、他のタブで作成したグループからBackface条件を満たすアイテムを削除します。他のタブでグループを作成しなかった場合、このオペレーションは、条件を満たすアイテムを追加します。
Non-Planar Polys
指定した許容値で非平面ポリゴンをグループ化します。
Note
非平面ポリゴンが、他のタブに関係なくグループに追加されます。
Edges
Note
エッジのグループ化ルールに一致したポイント、プリミティブ、エッジが、他のタブに関係なく最終的なグループになります。
Enable
エッジのグループ化を有効にします。
Min Edge Angle
法線間の角度が最低でもこの角度以上のプリミティブをグループ化します。エッジのグループ化では、エッジを共有する2つのプリミティブが、この角度条件を満たせば、そのエッジがグループに含まれます。
Max Edge Angle
法線間の角度が最大でこの角度以下のプリミティブをグループ化します。エッジのグループ化では、エッジを共有する2つのプリミティブが、この角度条件を満たせば、そのエッジがグループに含まれます。
Edge Angle Uses Angle Between Edges
エッジグループにのみ有効。このオプションをチェックすると、エッジを共有しているプリミティブの法線間の角度ではなく、エッジ間の角度に基づいて、エッジをグループ化します。
各エッジは、エッジのポイントを共有する他のエッジすべてに対して比較されます。
Min Edge Length
最低でもこの長さ以上のエッジをグループ化します。
Max Edge Length
最大でこの長さ以下のエッジをグループ化します。
Edge Depth
下記のPoint Group内のポイントを基準に、そこから指定したエッジの数だけ離れた範囲のポイントをグループ化します。
Point Group
上記の基準となるポイント。
Create Boundary Groups
サーフェス境界ポイントを含むグループを作成します。
Combine
ブーリアンオペレータに基づいて、異なるグループを結合します。
Combine Entity
操作するグループのタイプ。通常では、指定したグループからタイプが決まりますが、このパラメータは、曖昧な場合を解決する時に役に立ちます。
Group
このセクションでは、既存グループから新しいグループを作成することができます。
左側フィールドには、操作または作成するグループを入力し、右側のフィールドには、既存グループの名前を入力します。
Equals を選択するか、または
Equals All But によって他のグループ以外を全部選択することで、他のグループの内容を含めることができます。
さらにグループを追加して結合する場合は、その下のフィールドを使います。
Edit
Rename
既存グループを何か他の名前に変更します。グループ名を変更する時は、ワイルドカードを使って、指定したパターンに一致したいくつかのグループを変更することができます。
パターン置換のルールに関する詳細は、Attrib String Editを参照してください。
Group
名前を変更するグループ。
New Name
新しいグループ名。
Convert
異なるタイプのグループ間を変換します。グループを変換する時は、ワイルドカードを使って、指定したパターンに一致したいくつかのグループを変更することができます。
パターン置換のルールに関する詳細は、Attrib String Editを参照してください。
Convert From
ソースグループのタイプ。
Convert To
新しく作成するグループのタイプ。
Group
変換するグループ。
Convert Name
変換したグループの新しい名前。元のグループの名前を保持するには、空っぽのままにします。
Preserve Original
元のジオメトリを保持します。
Omit Entities in New Group not Wholly Contained in the Old Group
このオプションは、ポイントグループまたはエッジグループをプリミティブグループに変換した時に、元のポイントグループ内のポイントまたはエッジすべてを持つプリミティブのみが、変換後のプリミティブグループ内に含ませることができます。
ポイントグループやプリミティブグループをエッジグループに変換した時に、同じ物が適用されます。 元のポイントグループ内に両端のポイントを持つエッジのみが、新しいグループに追加されます。
Delete
既存グループを削除します。
Group
削除するグループ。
ローカル変数
N
(ポイント/プリミティブ/エッジの数) -1。
スタンダード変数のリストを参照してください。
Examples
このサンプルでは、Edge Groupを使って、オブジェクトの特徴的なエッジをPolyreduceで保持する方法を説明しています。
See also |