Zusammengesetzte animierte Figuren
- Durch Einfügen von Sensoren und deren Verknüpfung mit Timern über Routen, können Elemente animiert werden:
|
Code |
VRML |
#VRML V2.0 utf8
#2. Beispiel eines animierten zusammengesetzten Körpers
DEF KOERPER1 Transform
{
translation 0 0 0
rotation 0 0 1 0.7854
children
[
DEF QUADER Transform
{
translation 0 -0.1 0
rotation 0 0 1 0.0
children
[
Shape
{
geometry Box
{
size 2.0 0.2 2.0
}
appearance Appearance
{
material Material
{
diffuseColor 0.2 0.2 0.8
}
}
}
]
}
Transform
{
translation 0 0.5 0
rotation 0 0 1 0.0
children
[
Shape
{
geometry Sphere
{
radius 0.5
}
appearance Appearance
{
material Material
{
diffuseColor 0.8 0.8 0.2
}
}
}
]
}
DEF START TouchSensor {}
]
}
DEF ZEIT TimeSensor
{
cycleInterval 8
}
DEF BEWEGUNG PositionInterpolator
{
#Zeit
key
[
0.0
0.2
0.4
0.6
0.8
1.0
]
#x y z
keyValue
[
0.0 -0.1 0.0
0.0 0.0 0.0
0.0 0.1 0.0
0.0 0.2 0.0
0.0 0.3 0.0
0.0 0.4 0.0
]
}
DEF DREHUNG OrientationInterpolator
{
#Zeit
key
[
0.0
0.2
0.4
0.6
0.8
1.0
]
#Drehachse: x y z Winkel
keyValue
[
0.0 1.0 0.0 0.0
0.0 1.0 0.0 1.2
0.0 1.0 0.0 2.4
0.0 1.0 0.0 3.6
0.0 1.0 0.0 4.8
0.0 1.0 0.0 6.0
]
}
ROUTE START.touchTime TO ZEIT.startTime
ROUTE ZEIT.fraction_changed TO BEWEGUNG.set_fraction
ROUTE ZEIT.fraction_changed TO DREHUNG.set_fraction
ROUTE BEWEGUNG.value_changed TO QUADER.translation
ROUTE DREHUNG.value_changed TO QUADER.rotation
|
|
Tabelle 0-1: Zusammengesetzter animierter Körper in VRML