BaseDesign

Zusammenfassung

Dieses Design enthält den Mindest regel satz für ein Design, von dem ein Exemplar erzeugt werden kann. Jedes neue Design, von dem Sie direkt ein Exemplar erzeugen möchten, muss mindestens den Regelsatz von baseDesign enthalten. Für Mixin-Designs, von denen nicht direkt ein Exemplar erzeugt wird, ist BaseDesign nicht unbedingt erforderlich. Die Designs allerdings, in die Mixins eingebunden werden, müssen wiederum das baseDesign aufweisen. Designs, die nur baseDesign, nicht aber BasePart einbinden, sind in Intent in der Regel nicht sichtbar. Durch eine Überschreibung des Designs BaseDesignModifier können Sie Regeln für alle Designs global hinzufügen oder ändern. Ein Design kann überschrieben werden, indem ein neues Design mit dem Namen BaseDesignModifier erstellt und in die Projektbibliothek oder in eine andere Bibliothek eingefügt wird, die Vorrang vor der Kernel-Bibliothek hat. Diesem Design können Sie dann neue Regeln hinzufügen.

Mixins

BaseDesignModifier

Parameter

Name Typ Beschreibung
givenName alle Ein alternativer Name zur Referenzierung des Bauteils. Wenn angegeben, muss givenName unter allen gleichgeordneten Objekten eindeutig sein. givenName kann als Name oder als Zeichenfolge angegeben werden. Dieser Name wird in der Baugruppenstruktur angezeigt, wenn kein Anzeigename (displayName) angegeben ist.
Anmerkung: Zur Referenzierung eines Bauteils durch seinen givenName muss EnableHasChildNamed auf 1 festgelegt sein.
displayName Zeichenfolge In der Baugruppenstruktur angezeigter Name des Bauteils. In einer Referenz kann dieser Name nicht als alternativer Name verwendet werden. Vorgabe ist partName.

Regeln

Name Typ Beschreibung
self Bauteil Stellt das aktuelle Bauteil des Designs bereit.
children Liste Gibt eine Liste der Bauteile der nächstniedrigeren Ebene innerhalb der Hierarchie zurück. Diese Regel kann nach Bedarf durch Designs höherer Ebenen mit der Funktion children() überschrieben werden.
isNull? Boolesche Operation Gibt True zurück, wenn dies ein Exemplar von NullDesign ist.
refChain Zeichenfolge Gibt die Referenzkette zum Bauteil zurück.
ruleName Name Gibt den Namen des Bauteils zurück. Dieser Name kann sich von dem in der Baugruppenstruktur angezeigten Namen unterscheiden, wenn givenName oder displayName bereitgestellt wird.
designName Name Name des Designs des Bauteils. Die Funktion gibt das höchste Design der Hierarchie, nicht die Mixin-Designs zurück.
partParameters Liste Gibt eine Liste mit den Namen der bereitgestellten Parameter zurück.
first? Boolesche Operation Gibt True zurück, wenn dies das letzte Element einer untergeordneten Liste ist.
childListLength Ganzzahl Gibt die Anzahl der Elemente in der untergeordneten Liste zurück. Wenn das untergeordnete Element kein Element einer untergeordneten Liste ist, wird NoValue zurückgegeben.
isChildListMember? Boolesche Operation Gibt True zurück, wenn dies ein Element einer untergeordneten Liste ist.
last? Boolesche Operation Gibt True zurück, wenn dies das letzte Element einer untergeordneten Liste ist.
first Bauteil Das erste Element der untergeordneten Liste. Wenn das Bauteil kein Element einer untergeordneten Liste ist, wird NoValue zurückgegeben.
previous Bauteil Das vorherige Element der untergeordneten Liste (z. B. child.index - 1). Wenn das Bauteil kein Element einer untergeordneten Liste ist oder das aktuelle untergeordnete Element das erste Element der untergeordneten Liste ist, wird NoValue zurückgegeben.
cyclicPrevious Bauteil Gibt das vorherige Element der untergeordneten Liste zurück. Wenn das aktuelle untergeordnete Element das erste Element der untergeordneten Liste ist, wird das letzte Element der untergeordneten Liste zurückgegeben. Wenn das Bauteil kein Element einer untergeordneten Liste ist, wird NoValue zurückgegeben.
cyclicNext Bauteil Gibt das nächste Element der untergeordneten Liste zurück. Wenn das aktuelle untergeordnete Element das letzte Element der untergeordneten Liste ist, wird das erste Element der untergeordneten Liste zurückgegeben. Wenn das Bauteil kein Element einer untergeordneten Liste ist, wird NoValue zurückgegeben.
next Bauteil Das nächste Element der untergeordneten Liste (z. B. child.index + 1). Wenn das Bauteil kein Element einer untergeordneten Liste ist oder das aktuelle untergeordnete Element das letzte Element der untergeordneten Liste ist, wird NoValue zurückgegeben.
last Bauteil Das letzte Element der untergeordneten Liste. Wenn das Bauteil kein Element einer untergeordneten Liste ist, wird NoValue zurückgegeben.

Methoden

hasRule?( ruleName As Name ) As Boolean
Mit dieser Methode ermitteln Sie, ob dieses Design eine Regel mit dem Namen ruleName hat.
isBound?( ruleName As Name ) As Boolean
Mit dieser Methode überprüfen Sie, ob die Regel ruleName des Designs ausgewertet wurde.
isKindOf?( designName As Name ) As Boolean
Mit dieser Methode ermitteln Sie, ob in das Design dieses Bauteils das Design designName eingebunden wurde.
safeRef(ruleName As Any, Optional onErrorValue As Any = NoValue) As Any
Mit dieser Methode können Sie die Regel ruleName auf sichere Weise referenzieren. Bei einem Fehler wird der Wert onErrorValue zurückgegeben. Dieser ist vorgabegemäß NoValue.
safeRefMethod(ruleName As Any, args As List, Optional onErrorValue As Any = NoValue) As Any
Mit dieser Methode können Sie eine Methode mit dem Namen ruleName auf sichere Weise referenzieren. Die Argumente müssen in der args-Liste in der richtigen Reihenfolge übergeben werden. Bei einem Fehler wird der Wert onErrorValue zurückgegeben. Dieser ist vorgabegemäß NoValue.

Beispiel 1

Name: BaseDesign_Ex01
Design: acDrawingDocument
Name Typ Formel
cost Zahl
If me.isBound?(:costCalculated) Then 
	 costCalculated 
Else 
  costEstimated 
End If
costEstimated Number 5.0
costCalculated Number 5.17

Beispiel 2

Ausgabe der Bauteilparameter in eine Textdatei

Name: BaseDesign_Ex02
Design: acDrawingDocument
Name Typ Formel
childParams alle
Dim f As User = openFile("C:\My Documents\Child part parameters.txt", :Write)
Write("Child part parameters:" & newline(), f) 
For Each prt In children 
  Write(" " & prt.designName & newline(), f) 
		Dim params As List = prt.partParameters 
		For Each param In params 
				Dim val As String = stringValue(ref(prt,param)) 
				Write(" " & param & " = " & val & newline(), f) 
		Next param 
Next prt 
closeFile(f)
Untergeordneter Name: block_1
Untergeordnetes Design: :Block
Name Typ Angegeben
height Zahl 42
Länge Zahl 16
Breite Zahl 10
v000 Punkt Point(0.0, 0.0, 0.0)
Untergeordneter Name: block_2
Untergeordnetes Design: :Block
Name Typ Angegeben
height Zahl 42
Länge Zahl 16
Breite Zahl 10
v000 Punkt Point(12.0, 2.0, 0.0)
Untergeordneter Name: block_3
Untergeordnetes Design: :Block
Name Typ Angegeben
height Zahl 42
Länge Zahl 16
Breite Zahl 10
v000 Punkt Point(24.0, 4.0, 0.0)