ルールへの属性の挿入
様々なタイプの属性をルール・テキストに挿入できます。
次の書式を使用します:
nodePath
は、モデルのノードへのパスです。attrName
は、ノードの属性の名前です。
属性のタイプごとに異なるプロシージャを使用します。
属性のタイプ | 書式 | 例 |
---|---|---|
モデルに作成するカスタム属性 |
Colorという名前の属性を作成するとします:
ユーザーのアクションとルールが属性の値に影響しないため、属性値は実行時に静的です。 |
'Home Theater System'.'Speaker System'.userAttrs["PhysicalAttributes.Color"] |
補足 |
カスタム属性を追加する場合と同じステップを実行します。ただし、「補足」をクリックします。 ユーザーのアクションとルールが属性の値に影響しないため、属性値は実行時に静的です。 |
'Home Theater System'.'Speaker System'.suppAttrs["color"] |
Transactional |
ルール・エディタの「構造」領域で属性を選択し、「ルール・テキストに挿入」をクリックします。 ユーザーのアクションとルールは属性の値に影響するため、トランザクション属性の値は実行時に動的になります。 |
ここでは、ウィンドウとウィンドウ・トラックを含む例を示します。 各コースの長さは5フィートです。 この例では、ウィンドウの線形長を5で除算し、ウィンドウに必要なトラック数に追加します。 |
次のようなシステム属性:
|
カスタム属性を追加する場合と同じステップを実行します。ただし、「補足」をクリックします。 |
'Home Theater System'.'Speaker System'.'5.1'.Quantity() |
ルールでのトランザクション属性の使用に関するガイドライン
制約は、一連のノードのトランザクション属性のすべてのオカレンスにマップできます。 たとえば、ノードxの値が1の場合、ユーザーがWeightトランザクション属性の値1を選択または入力できないようにします:
(x = 1)EXCLUDES OC.Selection().transAttrs["Weight"] = 1
パスを使用してトランザクション属性の値を参照することはできません。 条件式で値をリテラルとして参照する必要があります。 たとえば:
(x) EXCLUDES (y.transAttrs["BaseWeight"] < 10)
Selection
システム属性は、トランザクション属性とともに使用できません。 この制限は、トランザクション属性に実行時にコンフィギュレータによって表示される値セット(オプション機能に対して表示される値など)がある場合にも適用されます。 ただし、オプション機能とともにSelection
を使用できます。
バックグラウンドの詳細は、「トランザクション属性」を参照してください。