モデル・ルールでの属性の使用方法
ルールを定義する場合は、ルールに参加するモデル・ノードを選択します。 ルール定義でモデル・ノードに関連付けられた属性を使用することもできます。
次の表に示す構文を使用して、ノード属性のタイプを参照し、その値を取得します。 構文列で、<nodePath>
はノードへのノード・パスを表し、<attrName>
はそのノードの属性の名前を表します。
属性タイプ |
構文 |
例 |
---|---|---|
ユーザー定義属性 |
モデル・ノードにユーザー定義属性がある場合は、ルール・エディタの属性ペインの品目タブからルール定義テキストに挿入できます。 属性を選択し、「ルール・テキストに挿入」ボタンをクリックします。 値はモデル定義の一部であるため、ユーザー定義属性の値は実行時に静的です。 |
|
補足属性 |
モデル・ノードに補足属性がある場合は、ルール・エディタの属性ペインの補足タブからルール定義テキストに挿入できます。 属性を選択し、「ルール・テキストに挿入」ボタンをクリックします。 値はモデル定義の一部であるため、サプリメンタル属性の値は実行時に静的です。 |
|
トランザクション属性 |
モデル・ノードにトランザクション属性がある場合は、ルール・エディタの構造ペインからルール定義テキストに挿入できます。 構造ツリーからトランザクション属性を選択し、「ルール・テキストに挿入」ボタンをクリックします。 トランザクション属性の値は、ユーザー処理またはモデル・ルールによって構成セッション中に決定されるため、実行時に動的になります。 この例では、ウィンドウの線形長を5 (マテリアルの長さは5フィート)で分割し、必要な標準トラック数に加算します。 |
|
次のようなコンフィグレータ・システム属性:
|
ルール・エディタの構造ペインのシステム・タブから、ルール定義テキストにシステム属性を挿入できます。 属性を選択し、「ルール・テキストに挿入」ボタンをクリックします。 |
|
ルール式でトランザクション属性を使用する場合は、次の点に注意してください:
-
特定の属性値を参照するには、それが属性の子であるかのように、パス・スタイル表記法では参照できません。 次のような条件式でリテラルとして参照する必要があります:
(x) EXCLUDES (y.transAttrs["BaseWeight"] < 10)
-
実行時に表示される列挙値セットがある場合でも、TIAではコンフィギュレータ・システム属性
Selection()
を使用できません。オプション機能など。 オプション機能はSelection()
をサポート -
1つのノード・セット内の特定のTIAのすべてのオカレンスに制約をマップできます。 次の例のような式構文を使用します。この構文は、ノードXの値が1の場合、TIA
Weight
の値1の選択または入力に対して制約します。(x = 1)EXCLUDES OC.Selection().transAttrs["Weight"] = 1