BaseDesign

Zusammenfassung

Dieses Design enthält den Mindestregelsatz 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. Diese Design können Sie dann neue Regeln hinzufügen.

Mixins

BaseDesignModifier

Parameter

Name Typ Beschreibung
givenName Any 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 String 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 Part Stellt das aktuelle Bauteil des Designs bereit.
children list 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? Boolean Gibt True zurück, wenn dies ein Exemplar von NullDesign ist.
refChain String 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 list Gibt eine Liste mit den Namen der bereitgestellten Parameter zurück.
first? Boolean Gibt True zurück, wenn dies das letzte Element einer untergeordneten Liste ist.
childListLength Integer 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? Boolean Gibt True zurück, wenn dies ein Element einer untergeordneten Liste ist.
last? Boolean Gibt True zurück, wenn dies das letzte Element einer untergeordneten Liste ist.
first Part Das erste Element der untergeordneten Liste. Wenn das Bauteil kein Element einer untergeordneten Liste ist, wird NoValue zurückgegeben.
previous Part 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 Part 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 Part 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 Part 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 Part 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 Number
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 Any
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 Number 42
length Number 16
width Number 10
v000 point Point(0.0, 0.0, 0.0)
Untergeordneter Name: block_2
Untergeordnetes Design: :Block
Name Typ Angegeben
height Number 42
length Number 16
width Number 10
v000 point Point(12.0, 2.0, 0.0)
Untergeordneter Name: block_3
Untergeordnetes Design: :Block
Name Typ Angegeben
height Number 42
length Number 16
width Number 10
v000 point Point(24.0, 4.0, 0.0)