Regelreferenzen

Es gibt in Intent mehrere Möglichkeiten zum Referenzieren einer Regel. Wenn sich die Regel in dem gleichen Design befindet, wird der Name der Regel verwendet. Im folgenden Beispiel befinden sich die Regeln tubingSize und Breite im Design.

Rule tubingSize As Number = 75
Rule width As Number = 800
Child topMember As :squareTube
   size = tubingSize
   cut1 = 1
   cut2 = 1
   length = width
End Child

In der untergeordneten Regel verweist size auf den Wert von tubingSize und length auf den Wert für die Breite.

Optional können Sie das Schlüsselwort me verwenden, um auf das aktuelle Design zu verweisen. Beispiel:

Child topMember As :squareTube
   size = me.tubingSize
   cut1 = 1
   cut2 = 1
   length = me.width
End Child
Anmerkung: Die Sprache Intent verwendet den Referenzoperator (Punkt) für Referenzen.

Referenzkette

Die meisten Referenzen in Regeln sind lokal. Sie können Regeln in Bauteilen referenzieren, die hierarchisch oberhalb oder unterhalb des aktuellen Bauteils liegen. Das folgende Beispiel bezieht sich auf die Stärkeregel im Bauteil footPlate. Dies ist ein untergeordnetes Element von rightLegAssembly.

rightLegAssembly.footPlate.thickness

Diese Art von Referenzkette funktioniert am besten als Abwärtsreferenz, beispielsweise wenn rightLegAssembly ein untergeordnetes Element des aktuellen Bauteils ist. Eine Aufwärtsreferenz mit bestimmten Bauteilnamen ist weniger zuverlässig, da sie eine Hierarchie erfordert, deren Bauteilnamen mit der Referenzkette genau übereinstimmen.

Die integrierte Regel Parent wird verwendet, um das übergeordnete Element des aktuellen Bauteils in der Intent-Baugruppe abzurufen. Der folgende Ausdruck gibt den Wert der Breiteregel des übergeordneten Elements zurück.

Parent.width

Wenn ein Bauteil nicht über eine bestimmte Regel verfügt, die zu seinem Design oder einem übernommenen Design gehört, sucht Intent vorgabemäßig bei dem übergeordneten Element des Bauteils nach der Regel. Wenn das übergeordnete Element keine Regel enthält, sucht Intent in der Baugruppenstruktur weiter nach der Regel. Wenn die Regel in keinem Vorgänger gefunden wird, wird ein Fehler gemeldet.