FrameMixin

Zusammenfassung

Dieses Design enthält eine Sammlung von Regeln zum Ausrichten und Positionieren eines neuen Koordinatensystems auf mehrere Weisen. Das neue Koordinatensystem kann relativ zum Koordinatensystem des übergeordneten Elements positioniert und ausgerichtet werden. Dies erfolgt entweder über Eingabevektoren und -punkte zur Berechnung des neuen Koordinatensystems oder durch Kopieren des Koordinatensystems aus einem anderen Bauteil.

Mixins

FrameMixinModifier

Parameter

Name Typ Beschreibung
localFrame Frame Das Koordinatensystem des Bauteils, das an FrameMixin beteiligt ist. Es wird nach den Gruppenregeln dieses Designs berechnet oder, wenn keine davon verwendet werden, wird es auf den Wert des referenceFrame festgelegt.
referenceFrame Frame Dies ist das Frame-Objekt, das als localFrame zu verwenden ist, wenn keiner der anderen Parameter verwendet wird, um den neuen Frame zu ermitteln. Vorgabemäßig ist der Wert von referenceFrame der localFrame-Wert des übergeordneten Elements dieses untergeordneten Elements. Durch diese Vorgabe übernimmt ein neues untergeordnetes Element, dessen Ausrichtung nicht explizit angegeben wird, die Ausrichtung des übergeordneten Elements.
origin point Ursprungspunkt des neuen localFrame-Werts
xDirection Vector x-Richtungsvektor des neuen localFrame. Vorgabegemäß ist dies der Vektor 1,0,0 im referenceFrame dieses Bauteils.
yDirection Vector y-Richtungsvektor des neuen localFrame. Vorgabegemäß ist dies der Vektor 0,1,0 im referenceFrame dieses Bauteils.

Gruppenregeln

<origin> Positioniert localFrame basierend auf dem Ursprungspunkt.

<xDirection> richtet localFrame basierend auf dem Vektor xDirection aus.

<yDirection> richtet localFrame basierend auf dem Vektor yDirection aus.

<xDirection yDirection> richtet localFrame basierend auf den Vektoren xDirection und yDirection aus.

<ReferenceFrame> Positioniert und richtet localFrame entsprechend referenceFrame aus.

Zum Hinzufügen zusätzlicher Positionierungs- und Ausrichtungsregeln für benutzerdefinierte Designs existieren kanonische Parameter für %%position und %%orientation. Diese funktionieren unabhängig voneinander. Daher kann der Ursprung (position) des Koordinatensystems unabhängig von dessen Ausrichtung (orientation) definiert werden.

Beispiel 1

Name: frameMixin_Ex01
Design: acDrawingDocument
Name Typ Formel
scale Number 1
shaftLength Number scale * 3/7
Untergeordneter Name: shaft
Untergeordnetes Design: :Cylinder
Child List?
Name Typ Angegeben
Quantity Integer 3
axis Vector nth(Child.index, {unitX, unitY, unitZ})
height Number shaftLength
radius Number Child.height/17
bottomPoint point origin
color String nth(Child.index, {" blue ", " green ", " red "})
Untergeordneter Name: arrow
Untergeordnetes Design: :Cone
Untergeordnete Liste?
Name Typ Angegeben
Quantity Integer 3
height Number scale - shaftLength
radius Number Child.height/5
color String ref(nth(Child.index, shaft), " color: ")
origin point ref(nth(Child.index, shaft), " topPoint: ")
ReferenceFrame Frame ref(nth(Child.index, shaft), " localFrame: ")

Beispiel 2

Name: frameMixin_Ex02
Design: acDrawingDocument
Untergeordneter Name: originAxes
Untergeordnetes Design: :frameMixin_Ex01
Untergeordneter Name: anObject
Untergeordnetes Design: :Text
Name Typ Angegeben
Text String "Obj"
charHeight Number 1.0
Untergeordneter Name: newLocalFrame
Untergeordnetes Design: :frameMixin_Ex01
Name Typ Angegeben
scale Number 0.5
ReferenceFrame Frame anObject.localFrame

Beispiel 3

Name: frameMixin_Ex03
Design: acDrawingDocument
Untergeordneter Name: originAxes
Untergeordnetes Design: :frameMixin_Ex01
Untergeordneter Name: anObject
Untergeordnetes Design: :Text
Name Typ Angegeben
Text String "Obj"
charHeight Number 1.0
origin point Point(0, 0, 2)
Untergeordneter Name: newLocalFrame
Untergeordnetes Design: :frameMixin_Ex01
Name Typ Angegeben
scale Number 0.5
referenceFrame Frame anObject.localFrame

Beispiel 4

Name: frameMixin_Ex04
Design: acDrawingDocument
Untergeordneter Name: originAxes
Untergeordnetes Design: :frameMixin_Ex01
Untergeordneter Name: anObject
Untergeordnetes Design: :Text
Name Typ Angegeben
Text String "Obj"
charHeight Number 1.0
yDirection Vector unitZ
Untergeordneter Name: newLocalFrame
Untergeordnetes Design: :frameMixin_Ex01
Name Typ Angegeben
scale Number 0.5
referenceFrame Frame anObject.localFrame

Beispiel 5

Name: frameMixin_Ex05
Design: acDrawingDocument
Untergeordneter Name: originAxes
Untergeordnetes Design: :frameMixin_Ex01
Untergeordneter Name: anObject
Untergeordnetes Design: :Text
Name Typ Angegeben
Text String "Obj"
charHeight Number 1.0
origin point Point(0, 0, 2)
xDirection Vector -unitY
yDirection Vector unitZ
Untergeordneter Name: newLocalFrame
Untergeordnetes Design: :frameMixin_Ex01
Name Typ Angegeben
scale Number 0.5
referenceFrame Frame anObject.localFrame