Descriptions et Exemples pour le raytracer de POV-Ray par Friedrich A. Lohmüller,
logo
    Animation 3D avec POV-Ray
        Quelques bases et exemples sur les animations.
English English English
Italiano Italiano
Deutsch Deutsch
Page d'Accueil
- Galerie d'Animations 3D
- Tutoriel POV-Ray

  Animation 3D
   Table des matières
  0. Bases.
     1. Exemple du base.
     2. Example 2.
     3. D'Images à gif animé.
     4. D'Images à Vidéo.
     5. Connaissance de base.
     6. Commandes d'animation.
  I. Animations cycliques.
     1. Objets tournants.
     1.2. Planètes en orbite.
  > 1.3. Une horloge.
     2. Caméra tournante.
     2.1. Caméra deplacée linéaire
     3. Le problème
         de la roue.
     3.1. Roues roulantes.
     4. Engrenages.
     4.1. Chaîne à rouleaux.
     4.2. Chaîne de bicyclette.
     5. Balancement.
     5.1. Pendule de Newton
     5.2. Rock le rocking chair !
     6. Oscillation.
     7. Bielle d'accouplement
     7.1. Bielle et manivelle.
     8. Psychédélique + Op-Art.
     9. Compteurs
        + Compte à rebours.
    10. La pliage d'un cube.
  II. Mouvements non-linéaires
     1.0 Accélérer et ralentir 1.
     1.1 Accélérer et ralentir 2.
     2. Chuter et bondir.
     3. Accélération selon
          formules physiques.
     4. Mouvements
          avec fonctions spline.
  III. Chemins pour
      des animations avec
      des courbes spline
     1. Courbes spline.
     2. Spline fermé.
     3. Animation Paths.
                                                           

L'Animation d'une Horloge  
Les aiguilles sur le cadran d'une horloge
tournent avec des allures différentes.
Une animation cyclique.

       

La rotation des aiguilles d'une horloge :
Pendant l'aiguille des heures tourne 360 degrés durant 12 heures l'aiguille des minutes doit tourner 12 fois plus = 360*12 degrés. Et encore l'aiguille des secondes doit tourner un autre 60 fois plus = 360*12*60 degrés.
Nous déclarons une variable de base Clock_Time où nous pouvons ajuter des valeurs de test entre 0 et 1.
#declare Clock_Time = clock+0.00;
// rotation angles in degrees -------------
#declare Rotate_H   = Clock_Time*360;
#declare Rotate_Min = Clock_Time*360*12;
#declare Rotate_Sec = Clock_Time*360*12*60
À l'avenant pour tester un temps donné comme
  '2h 20min 30sec' nous devons déclarer :
#declare Clock_Time =
 clock + 2/12 + 20/(720) + 30/(43200);
Pour une animation cyclique de 12 heures d'une horloge il est recommandé de tenir compte que 12 h = 720 min = 43200 secondes!
De là pour une animation cyclique avec un fichier petit est meilleur de renonce à l'aiguille des secondes! Pour voir le courant de l'aiguille des secondes on a besoin d'une animation avec 43200 images ('frames')!

Le saut des minutes et des secondes :
Si nous voulons les aiguilles des minutes et des secondes de sauter seulement sur les positions de minutes et/ou secondes completes (chaque 6 degrés) nous devons ajuter :
#declare Rotate_Min=int(Rotate_Min/6+0.01)*6;
#declare Rotate_Sec=int(Rotate_Sec/6+0.01)*6;

Les aiguilles d'une horloge:
Pour faire l'aspect du cadran indépendant de les dimensions nous appliquer tous les mesures au rayon de base du cadran :
#declare CR = 0.400; // rayon du cadran
// flatten cylinders we use here;
#declare Flat = &l;1,1,0.025>;
//-----------------------------------
#declare Face_D = 0.001;
// length of hands -------------
#declare Hd_H_Len   = CR*0.60;
#declare Hd_Min_Len = CR*0.85;
#declare Hd_Sec_Len = CR*0.95;
// radii of the hands ---------
#declare Hd_H_D   = CR*0.055;
#declare Hd_Min_D = CR*0.035;
#declare Hd_Sec_D = CR*0.020;
// position z of hands --------
#declare Hd_H_Z   = CR*0.05;
#declare Hd_Min_Z = CR*0.04;
#declare Hd_Sec_Z = CR*0.03;
//-----------------------------------------
Pour les aiguilles et les marques nous utilsons de cylindres aplatis.
// aiguille des heures ----------------
cylinder{ <0,0,0>,<0,Hd_H_Len,0>,Hd_H_D
          scale Flat
          rotate <0,0,-Rotate_H>
          translate<0,0,-Hd_H_Z>
          texture{ Hands_Texture } }
// aiguille des minutes ------------------
cylinder{ <0,0,0>,<0,Hd_Min_Len,0>,Hd_Min_D
          scale Flat
          rotate <0,0,-Rotate_Min>
          translate<0,0,-Hd_Min_Z>
          texture{ Hands_Texture }  }
// body center ----------------------------
cylinder{ <0,0,-Hd_H_Z>,<0,0,0>,Hd_H_D*1.5
          texture{ Hands_Texture } }
// face base ------------------------------
cylinder{ <0,0,0>,<0,0, Face_D>,CR
          texture{ Face_Texture } }
//-----------------------------------------
Pour plus de détails du cadran, de l'aiguille des secondes et les textures voir le fichier de la scène.

Clockface
Le cadran : Les aiguilles.
Clockface
Le cadran : Les marques pour les heures et les minutes.
Clockface
Le cadran complet.


Clockface animation Clockface animation
Deux animations de cadrans .
Description de la scène pour POV-Ray :
"Clockface_00.ini" et
"Clockface_00.pov"

station clock
Une horloge de la gare
Queques exemples pour l'application:



Alarm clock
Un réveil

top

© Friedrich A. Lohmüller, 2010
http://www.f-lohmueller.de