伝播Hexグループ

伝播Hexグループは、スイープに似た条件を使ってHexメッシュからHexをまとめる方法です。たとえば、指定した2つのメッシュフェイス間にあるすべてのHexを1つのグループにできます。

注:以下の最初の例は、まず次のコマンドを実行した状態を前提としています。

brick width 10

volume 1 size 1

mesh volume 1

サーフェスから開始する伝播Hexグループ

サーフェスから開始する場合、サーフェスで終了する方法と、ユーザーが指定した回数だけ伝播する方法があります。

サーフェスで終了

Group ['name' | <id>] Add Hex Propagate Surface <id> Target Surface <id>

例

group 2 add hex propagate surface 1 target surface 2

結果: 1000個のHexを含むGroup 2が作成されます。

回数指定

Group ['name' | <id>] Add Hex Propagate Surface <id> Times <number>

例

group 2 add hex propagate surface 1 times 4

結果: 400個のHexを含むGroup 2が作成されます。

サーフェスで終了する方法と回数指定のどちらでも「multiple」オプションを使用でき、指定したmultiple数に応じて複数のグループが作成されます。

Multiple指定でサーフェス終了

Group ['name' | <id>] Add Hex Propagate Surface <id> Target Surface <id> Multiple <number>

例

group 2 add hex propagate surface 1 target surface 2 multiple 2

結果: 5つのグループが作成され、それぞれmultiple 2に対応するIDで保存されます。これらは親グループGroup 3に格納され、さらにGroup 3は祖父母グループGroup 2に格納されます。

Multiple指定で回数指定

Group ['name' | <id>] Add Hex Propagate Surface <id> Times <number> Multiple <number>

例

group 2 add hex propagate surface 1 times 10 multiple 5

結果: 2つのグループが作成され、それぞれmultiple 5に対応するIDで保存されます。これら2グループは親グループGroup 3に格納され、Group 3は祖父母グループGroup 2に格納されます。

 

回数を指定した場合に方向が曖昧なら、サーフェス方向またはノード方向を指定して伝播方向を決められます。終了サーフェスを指定した場合は、ノード方向だけを使用できます。ノード方向を指定する場合、伝播したHexの中に選択ノードが含まれるようにノードを選ぶ必要があります。伝播中にそのノードへ到達しなければ方向を決定できず、指定グループに含まれるHexは0個になります。

注: 以下の例では、次のコマンドを実行して結果を確認できます。

brick x 10

vol 1 size 1

brick width 10

body 2 move 10

volume all size 1

merge all

mesh volume all

方向指定でサーフェス終了

Group ['name' | <id>] Add Hex Propagate Surface <id> Times <number> Direction Node <id>

例

group 2 add hex propagate surface 6 target surface 12 direction node 1530

結果: 400個のHexを含むGroup 2が作成されます。

注: directionコマンドとmultipleコマンドは組み合わせて使用できます(例:group 2 add propagate surface 6 times 4 multiple 2 direction node 1530)。

方向指定で回数指定

Group ['name' | <id>] Add Hex Propagate Surface <id> Times <number> Direction [surface <id> | node <id>]

例

group 2 add hex propagate surface 6 times 4 direction surface 4

group 2 add hex propagate surface 6 times 4 direction node 1530

結果: 400個のHexを含むGroup 2が作成されます。

フェイスから開始する伝播Hexグループ

フェイスから開始する場合、サーフェスで終了、フェイスで終了、またはユーザーが指定した回数だけ伝播する方法があります。

サーフェスで終了

Group ['name' | <id>] Add Hex Propagate [Source] Face <id range> Target Surface <id>

例

group 2 add hex propagate face 1 11 21 target surface 2

結果: 30個の伝播Hex(3個×10層)を含むGroup 2が作成されます。

フェイスで終了

Group ['name' | <id>] Add Hex Propagate [Source] Face <id> Target Face <id>

例

group 2 add hex propagate face 1 target face 1721

結果: 5個の伝播Hex(1個×5層)を含むGroup 2が作成されます。

注: フェイスで終了する場合は開始フェイスを一度に1つだけ指定する必要がありますが、サーフェスで終了する場合は複数の開始フェイスを指定できます。

回数指定

Group ['name' | <id>] Add Hex Propagate [Source] Face <id range> Times <number>

例

group 2 add hex propagate face 2 times 4

結果: 4個の伝播Hex(1個×4層)を含むGroup 2が作成されます。

 

サーフェス終了、フェイス終了、回数指定のすべてで「multiple」オプションを使用できます。このオプションでは、祖父母(最上位)、親(中間、祖父母に含まれる)、子(最下位、親に含まれる)のグループ階層が作成されます。子グループには各Hex層(子グループごとに指定した層数)が入り、それらが1つの親グループにまとめられ、さらにコマンドで指定したグループIDの下に配置されます。後続の伝播コマンドでは、祖父母グループに追加しつつ、新しい親・子グループを作成できます。このため、必要に応じて複数の伝播「セット」を1つの祖父母グループに保存できます。

Multiple指定でサーフェス終了

Group ['name' | <id>] Add Hex Propagate [Source] Face <id> Target Surface <id> Multiple <number>

例

group 2 add hex propagate face 1 target surface 2 multiple 1

結果: Hexの各層ごとに1つ、合計10個のグループが作成され、それぞれのIDで保存されます。これらは親グループGroup 3に格納され、Group 3は祖父母グループGroup 2に格納されます。その後、Group 2(祖父母)へ追加する伝播コマンドを実行すると、Group 2内に新しい親グループが作成され、その中にHex層の子グループが格納されます。

Multiple指定でフェイス終了

Group ['name' | <id>] Add Hex Propagate [Source] Face <id> Target Surface <id> Multiple <number>

例

group 2 add hex propagate face 1 target face 1721 multiple 1

結果: Hexの各層ごとに1つ、合計5個のグループが作成され、それぞれのIDで保存されます。これらは親グループGroup 3に格納され、Group 3は祖父母グループGroup 2に格納されます。その後、Group 2(祖父母)へ追加する伝播コマンドを実行すると、Group 2内に新しい親グループが作成され、その中にHex層の子グループが格納されます。

Multiple指定で回数指定

Group ['name' | <id>] Add Hex Propagate [Source] Face <id> Times <number> Multiple <number>

例

group 2 add hex propagate face 1 times 10 multiple

結果: 2つのグループが作成され、それぞれのIDで保存されます。これら2グループは親グループGroup 3に格納され、Group 3は祖父母グループGroup 2に格納されます。

 

終了サーフェスまたは終了フェイスが曖昧な場合は、ノード方向を指定して伝播方向を決められます。ノード方向を指定する際は、伝播したHexの中に選択ノードが含まれるようにノードを選ぶ必要があります。伝播中にそのノードへ到達しなければ方向を決定できず、指定グループに含まれるHexは0個になります。

方向指定でフェイス終了

Group ['name' | <id>] Add Hex Propagate [source] Face <id> Target Face <id> Direction Node <id>

例

group 2 add hex propagate face 1721 target face 1 direction node334

結果: 6個のHexを含むGroup 2が作成されます。

方向指定でサーフェス終了

Group ['name' | <id>] Add Hex Propagate [Source] Face <id range> Target Surface <id> Direction Node <id>

例

group 2 add hex propagate face 1 target surface 2 direction node 334

結果: 10個のHexを含むGroup 2が作成されます。

注: directionコマンドとmultipleコマンドは一緒に使用できます(例:group 2 add propagate face 1721 end face 1 multiple 2 direction node 334)。

 

回数を指定した場合に方向が曖昧なら、サーフェス方向またはノード方向を指定して伝播方向を決められます。ノード方向の条件はサーフェスまたはフェイスで終了する場合と同じで、選択ノードが伝播したHex内に存在する必要があります。

方向指定で回数指定

Group ['name' | <id>] Add Hex Propagate [Source] Face <id> Times <number>Direction [surface <id> | node <id>]

例

group 2 add hex propagate face 110 times 4 direction surface 2

group 2 add hex propagate face 1 times 4 direction node 269

結果: 4個のHexを含むGroup 2が作成されます。

注: directionコマンドとmultipleコマンドは一緒に使用できます(例:group 2 add propagate face 1721 times 4 multiple 2 direction surface 1)。

伝播Hexグループの命名規則

伝播Hexグループには特別な命名規則を使用できます。例で説明するのが最も分かりやすいでしょう。

次のコマンドは、論理的な名前を持つグループ階層を次のように作成します。

group 'W1P1T1' add propagate surf 1 end surf 2 multiple 1

階層は次のようになります。

W1

W1P1

W1P1T1

W1P1T2

W1P1T3

...

W1P1T10

W1P1はW1に含まれ、W1P1T1、W1P1T2などはW1P1に含まれます。

ソフトウェアはグループ名内の数値を探し、部分文字列から適切な祖父母、親、子の名前を解析します。コマンドを正しく動作させるには、グループ名にちょうど3つの部分文字列があり、それぞれが整数で終わっている必要があります。

続けて次のコマンドを実行すると、

group 'W1P2T1' add propagate surf 3 end surf 5 multiple 1

W1にW1P2という親グループと、その配下の子グループが追加され、次の階層になります。

W1

W1P1

W1P1T1

W1P1T2

W1P1T3

...

W1P1T10

W1P2

W1P2T1

W1P2T2

W1P2T3

...

W1P2T10