Hilfe
VectorPitch
Aufruf
Parameter
Rückgabewert
Beschreibung
Zusatzinformation
Beispiel
Siehe auch
winkel# = VectorPitch# (x#, y#, z#)
Parameter
x# | Vectorkoordinate X |
y# | Vectorkoordinate Y |
z# | Vectorkoordinate Z |
Rückgabewert
Winkel für die X-Achse (pitch) wird zurückgeliefert.
Beschreibung
Die Funktion VectorPitch berechnet den absoluten Pitch-Winkel für die X-Achse. Für die Berechnung muss man nur die drei Abstände angeben. Diese werden aus der Differenz von zwei 3D-Weltpunkten berechnet (siehe Beispiel).
Die Funktion VectorYaw berechnet den zweiten Winkel für die Y-Achse. Ein dritter Winkel wird nicht benötigt.
Zusatzinformation
Dies ist ein undokumentierter Befehl. Sollte dieser Befehl wieder offiziell entfernt werden, wären Programme zu allen zukünftigen Updates nicht mehr kompatibel und müssten umgeschrieben werden. Die Anwendung ist daher auf eigenes Risiko.
Beispiel
Standardbeispiel:
Graphics3D 640, 480, 16, 2
SetBuffer BackBuffer()
camera = CreateCamera()
light = CreateLight()
PositionEntity camera, 0, 0, - 5
RotateEntity light, 90, 0, 0
cylinder = CreateCylinder(20)
sphere = CreateSphere()
RotateMesh cylinder, 90, 0, 0
ScaleEntity cylinder, 1, 1, 3
PositionEntity cylinder, 0, 0, 5
EntityAlpha sphere, .8
EntityColor sphere, 255, 100, 100
While Not KeyHit(1)
If KeyDown(200) Then MoveEntity sphere, 0, .1, 0
If KeyDown(208) Then MoveEntity sphere, 0, - .1, 0
If KeyDown(203) Then MoveEntity sphere, - .1, 0, 0
If KeyDown(205) Then MoveEntity sphere, .1, 0, 0
x# = EntityX#(cylinder) - EntityX#(sphere)
y# = EntityY#(cylinder) - EntityY#(sphere)
z# = EntityZ#(cylinder) - EntityZ#(sphere)
pitch# = VectorPitch#(x#, y#, z#)
yaw# = VectorYaw#(x#, y#, z#)
RotateEntity cylinder, pitch#, yaw#, 0
RenderWorld
Flip
Wend
End
SetBuffer BackBuffer()
camera = CreateCamera()
light = CreateLight()
PositionEntity camera, 0, 0, - 5
RotateEntity light, 90, 0, 0
cylinder = CreateCylinder(20)
sphere = CreateSphere()
RotateMesh cylinder, 90, 0, 0
ScaleEntity cylinder, 1, 1, 3
PositionEntity cylinder, 0, 0, 5
EntityAlpha sphere, .8
EntityColor sphere, 255, 100, 100
While Not KeyHit(1)
If KeyDown(200) Then MoveEntity sphere, 0, .1, 0
If KeyDown(208) Then MoveEntity sphere, 0, - .1, 0
If KeyDown(203) Then MoveEntity sphere, - .1, 0, 0
If KeyDown(205) Then MoveEntity sphere, .1, 0, 0
x# = EntityX#(cylinder) - EntityX#(sphere)
y# = EntityY#(cylinder) - EntityY#(sphere)
z# = EntityZ#(cylinder) - EntityZ#(sphere)
pitch# = VectorPitch#(x#, y#, z#)
yaw# = VectorYaw#(x#, y#, z#)
RotateEntity cylinder, pitch#, yaw#, 0
RenderWorld
Flip
Wend
End
Siehe auch

