Hilfe
Parameter
x# | Koordinate X für Transformation (normal) |
y# | Koordinate Y für Transformation (normal) |
z# | Koordinate Z für Transformation (normal) |
quelle% | Quell-Objekt für Transformation (0=global) |
ziel% | Ziel-Objekt für Transformation (0=global) |
Rückgabewert
-
Beschreibung
Die Anweisung TFormVector wandelt "Vector"-Koordinate eines Quell-Objekts zur Ziel-Koordinate um (ählich TFormPoint - nur als Vektor).
Wenn Quelle oder Ziel 0 sind, dann wird die globale Weltkoordinate benutzt.
Das Ergebnis dieser Transformation kann mit TFormedX, TFormedY
und TFormedZ
ermittelt werden.
Beispiel: Du möchtest ein Objekt 1 Schritt nach vorne bewegen (0,0,1). Das kann man so machen: MoveEntity obj,0,0,1. Wie würde das aber als globale Version aussehen, da der Vektor von Objektwinkel abhängig ist. Den Vektor kann man mit diesen Befehlen transformieren (siehe Beispiel). Dann kann ein Objekt auch mit TranslateEntity
obj,x,y,z bewegt werden.
Beispiel
Standardbeispiel:
p = CreatePivot()
PositionEntity p, 10, 20, 30
TurnEntity p, - 5, - 15, 25
;Was würde passieren, wenn wir einen Schritt vorwärts
;machen würden? Lokaler Vektor dafür wäre: (0, 0, 1).
;Aber wir brauchen globale Version:
TFormVector 0, 0, 1, p, 0
Text 0, 00, "Vektor für 1 Schritt:"
Text 0, 20, TFormedX()
Text 0, 40, TFormedY()
Text 0, 60, TFormedZ()
;Nun machen wir diesen Schritt. Die neue Position
;sollte jetzt (10, 20, 30) plus Vektor sein.
MoveEntity p, 0, 0, 1
Text 200, 00, "Neue Position"
Text 200, 20, EntityX(p)
Text 200, 40, EntityY(p)
Text 200, 60, EntityZ(p)
Flip
WaitKey()
End
Siehe auch

