Home
- Animationen Galerie
- POV-Ray Tutorial
3D Animation
Inhaltsübersicht
0. Grundlagen
1. Beispiel
2. Beispiel 2
3. Bilder zu animierte Gif
4. Von Bildern zum Video
5. Grundbegriffe
6. Animationsbefehle
I. Zyklische Animationen
1. Objekt-Rotation
1.2. Planeten im Orbit
1.3. Animierte Uhr
2. Kamera-Rotation
2.1. Kamera Geradeausflug
3. Western-Kutschen
-Problem
3.1. Rollende Räder
4. Zahnradgetriebe
4.1. Rollende Kette
4.2. Fahrradkette
5. Pendelschwingung
5.1. Newtonpendel
5.2: Schaukelstuhl
6. Federpendel
7. Koppelstange
7.1. Pleuelstange
8. Psychedelic + Op-Art
9. Zähler + Countdowns
10. Faltung eines Würfels
II. Nichtlineare Bewegungen
1.0 Beschleunigung
+Bremsen 1
1.1 Beschleunigung
+ Bremsen 2
2. Fallen + Hüpfen
> 3. Beschleunigung nach
physikalischen Formeln
4. Geschwindigkeitssteuerung
mit Spline-Funktionen
III. Animationspfade mit Spline-Kurven
1. Spline-Kurven
2. Geschlossene Splines
3. Animationspfade
|
|
Beschleunigung nach
physikalischen Formeln
Nichtlineare Bewegungen in Animationen
zur Simulation von realistischem Beschleunigung/Verzögerung(Bremsen) nach
physikalischen Bewegungsgesetzen in POV-Ray.
|
Die Gesetze einfacher Bewegungen
// t = Zeit, s = Weg, v = Geschwindigkeit, a = Beschleunigung )
1. Bewegung mit konstanter Geschwindigkeit v:
Geschwindigkeit |
v = konstant |
Zurückgelegter Weg |
s(t) = v * t |
|
|
|
2a. Bewegung mit konstanter Beschleunigung a:
Beschleunigung |
a = konstant |
Geschwindigkeit |
v(t) = a * t |
Zurückgelegter Weg |
s(t) = 1/2*a*t2 |
|
|
|
2b. Konstante Beschleunigung
+ Anfangsgeschwindigkeit v0:
Beschleunigung |
a = konstant |
Geschwindigkeit |
v(t) = a * t + v0 |
Zurückgelegter Weg |
s(t) = 1/2*a*t2 + v0*t |
|
|
|
|
Simulation einer Beschleunigung a
bei konstanter Anfangsgeschwindigkeit v0:
|
//---------------------------------
#declare Total_Time = 4.48;
#declare Time = Total_Time*clock; //
#declare Time_A = 2.65; // start with acceleration
#declare Time_B = 3.45; // end with acceleration
// total acceleration time:
#declare Ac_Time = Time_B-Time_A;
// last sector without acceleration:
#declare End_Time= Total_Time-Time_B;
#declare Acceleration = 5.0 ;
// v(0) = constant speed at start:
#declare V_0 = 1 ;
// final speed after acceleration
// ---- vitesse finale après l'accélération constante
#declare End_Speed = Acceleration * Ac_Time + V_0 ;
// covered distances
//---- distances parcourues -----
//1: with constant speed:
// ---- avec vitesse constante:
#declare Way1 = V_0*Time_A ;
//2: with constant acceleration
// --- avec accélération constante:
#declare Way2 =
Acceleration/2*pow(Ac_Time,2)+V_0*Ac_Time+Way1;
//note: pow(Ac_Time,2) = Ac_Time*Ac_Time
// with constant speed in last sector
//-avec la vitesse constant dans le dernière secteur
//3: total distance
// --- distance totale
#declare Way3 = End_Speed*( End_Time ) + Way2 ;
//---------------------------- |
|
Accelerate speed
|
Berechnung des zurückgelegten Weges
//---------------------------------
// calculating the distance at 'Time'
--- calulation de la distance au temps 'Time'
// covered by the rolling sphere;
--- parcourue de la sphère roulante:
// constant translation
#if ( Time < Time_A )
#declare Way = V_0*Time;
#end
// constant translation + acceleration
#if (( Time >= Time_A ) & ( Time < Time_B ))
#declare Way = Acceleration/2*pow(Time - Time_A,2)
+ V_0*(Time - Time_A) + Way1;
#end
// way with constant speed after acceleration ends
#if ( Time >= Time_B )
#declare Way = End_Speed*( Time - Time_B) + Way2;
#end
//---------------------------------------------------
sphere{<0,0,0>,0.75 translate<0,0.75, Way>}
//-------------------------------------------------- |
Zum Rollen der dargestellten Kugel siehe Szenenbeschreibung!
|
|