SCALEENTITY Entity, X#, Y#, Z# [,Global]


BeschreibungBlitz3D
Die Anweisung SCALEENTITY skaliert ein Objekt auf eine bestimmte absolute Größe.

Normalerweise wird jedes Objekt mit Skalierungsfaktor 1 erstellt/geladen. Gibt man nun eine kleine Zahl ein, dann wird dieses Objekt entsprechend verkleinert (0.5=50%). Gibt man dagegen größeren Wert ein, dann wird es vergrößert (2.0=200%).

Negative Skalierungsfaktoren sind aber auch möglich. Dieses Objekt wird dann in der entsprechenden Achse gespiegelt.

Der optionale Parameter "Global" gibt an, ob die Skalierungsfaktoren (un)abhängig von Parent übergeben werden. Gebe 0 ein, wenn Skalierungsgröße vom Parent in Berechnung einfließen soll. Sonst gebe 1 ein, wenn dieses Objekt unabhängig vom Parent skaliert werden soll.


Parameter
Entity=Identität eines Objekts (entity)
X=Absoluter Skalierungsfaktor X
Y=Absoluter Skalierungsfaktor Y
Z=Absoluter Skalierungsfaktor Z
Global=0=Größe vom Parent abhängig (Standard)
1=Größe vom Parent unabhängig


Rückgabewert
-


Beispiel
Dieses Programm erstellt einen Kegel. Dieser Kegel lässt sich beliebig skalieren:

GRAPHICS3D 640,480
SETBUFFER BACKBUFFER()
camera=CREATECAMERA()
light=CREATELIGHT()
cone=CREATECONE(32)
POSITIONENTITY cone,0,0,5
x_scale#=1
y_scale#=1
z_scale#=1

WHILE NOT KEYHIT(1)
   IF KEYDOWN(203)=1 THEN x_scale#=x_scale#-0.1
   IF KEYDOWN(205)=1 THEN x_scale#=x_scale#+0.1
   IF KEYDOWN(208)=1 THEN y_scale#=y_scale#-0.1
   IF KEYDOWN(200)=1 THEN y_scale#=y_scale#+0.1
   IF KEYDOWN(44)=1 THEN z_scale#=z_scale#-0.1
   IF KEYDOWN(30)=1 THEN z_scale#=z_scale#+0.1
   SCALEENTITY cone,x_scale#,y_scale#,z_scale#
   RENDERWORLD
   TEXT 0,0,"Benutze Cursortasten/A/Z"
   TEXT 0,20,"X Scale: "+x_scale#
   TEXT 0,40,"Y Scale: "+y_scale#
   TEXT 0,60,"Z Scale: "+z_scale#
   FLIP
WEND
END


Siehe auch
FITMESH, SCALEMESH