Descrizioni ed esempi per POV-Ray di Friedrich A. Lohmüller ,
in parti tradotto di Paolo Taraboi

Cicli in POV-Ray     
English English English
Français français
Deutsch Deutsch

Home
- POV-Ray Tutorial

  Cicli con POV-Ray
  1. For e While
       Comparazione
  2. Trasformazioni
       lineari
>3. Trasformazioni
       circolari
  4. Moebius etc.
  5. Viti e spirali
  6. Spirali
       intrecciate
  7. Chiocciole
       e ammoniti
  8. Spirali sferiche 1
  9. Spirali sferiche 2
 10. Spirali Fibonacci
                                           
 
  - Download

Cicli e Trasformazioni circolari

Il ciclo while usati per generare dei movimenti di rotazione:

#declare Ball =
sphere{ <0,0,0>,0.50
   texture{
     pigment{ color rgb<0.75,0,0>}
     finish{ phong 1 } }
} //----------------------------------
#declare Radius = 3.00;
#declare Nr = 0;      // start
#declare EndNr = 16;  // end
#while (Nr < EndNr)
object{ Petal
        translate<Radius,0.5,0>
        rotate<0,Nr* 360/EndNr,0>}
 #declare Nr = Nr + 1;// next Nr
#end // --------- end of loop -------



Una versione "florale":
Scena per POV-Ray: povloop4_1.pov
o povloop4_4.txt
Scena per POV-Ray: povloop4_0.pov
o povloop4_0.txt

Se facciamo ruotare le sfere lungo l'asse Z,
otteniamo una spirale circolare:

#declare Ball =
sphere{<0,0,0>,0.25
       texture{
         pigment{ color rgb<1,0,0>}
         finish { phong 1}
       } //
} //----------------------------------
#declare R_major = 3.00;
#declare R_minor = 1.00;
#declare N_major =  10;
#declare N_minor = 430;

#declare Nr = 0;             // start
#declare EndNr=N_major*N_minor;// end
#while (Nr < EndNr)
object{Ball
       translate<R_minor,0,0>
       rotate<0,0,Nr * 360/N_minor>
       translate<R_major,0,0>
       rotate<0,Nr * 360/EndNr,0>}
 #declare Nr = Nr+1;//next Nr
#end // -------- end of loop -------
Scena per POV-Ray: povloop5.pov
o: povloop5.txt
Se continuiamo con questo gioco otteniamo una doppia spirale circolare. Il numero di sfere cresce enormemente. Nello scenario seguente ci sono 25000 sfere e per gestirle sono necessari circa 17 MB di RAM.
#declare Ball =
 sphere{<0,0,0>,0.1
        texture{see scene file}}}
//------------------------------------
#declare R_major = 3.50;
#declare R_minor = 1.00;
#declare R_inner = 0.30;
#declare N_maj = 14;
#declare N_min = 18;
#declare N_in  = 100;
//--------------------------------
#declare Nr = 0;    // start loop
#while (Nr < N_maj*N_min*N_in)
object{Ball
 translate<0,0,R_inner>
 rotate<0,Nr * 360/N_inner,0>
 translate<R_minor,0,0>
 rotate<0,0,Nr * 360/(N_min*N_in)>
 translate<R_major,0,0>
 rotate<0,Nr*360/(N_maj*N_min*N_in),0>
 }
 #declare Nr=Nr+1;// next Nr
#end // ----------- end of loop --
Scena per POV-Ray: povloop6.pov
o: povloop6.txt


top

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