Descrizioni ed esempi per POV-Ray di Friedrich A. Lohmüller,

Casualità con POV-Ray  - parte 4    
English English English
Français français
Deutsch Deutsch

Home
- POV-Ray Tutorial

Casualità con POV-Ray
   - Numeri casuali in Loops
   - Quadratico e cubico
   - Colori e Scale
  > Inclinare e piegare
   - Alberi con casualità
   - L'include file 'rand.inc'
   - height_field riempito
   - Fiore casuale

  - Insert Menu Add-on
    & Download
                                     
Inclinare e piegare per caso      

Come inclinare e piegare irregolare per caso una serie d'oggetti.
Usiamo una serie di cilindri, che arrangiamo in una linea con un while loop.

//------------------------------------
#declare Mast =  // un palo
cylinder{ <0,0,0>,<0,2,0>,0.1
 texture{
  pigment{ color rgb<0.40,0.25,0.15>}
  normal { bumps 0.5
           scale <0.005,0.25,0.005>}
  finish { phong 0.5}
 } // end of texture
} // end of cylinder -----------------

#declare NrX = -10;     // start
#declare EndNrX = 10;   // end
#while (NrX < EndNrX+1)
   object{ Mast
           translate<0,0,Nr*1.5>
         } // end of object

 #declare NrX = NrX + 1;  //next Nr
#end // ------------ end of loop -----
File di scena per POV-Ray .pov or .txt

Perché l'espressione "rand(Random_1)" genera valori casuali tra 0 e 1, possiamo ottenere con l'espressione "rand(Random_1) - 0.5" valori tra -0.5 e +0.5. Per consequenza il termine " 2 * ( rand(Random_1) - 0.5 )" genera valori tra -1 e 1.
Per ottenere una rotazione intorno a l'asse z per es. di +/-10 gradi maximale dobbiamo moltiplicare l'espressione precedente con l'ammontare di quest'angolo maximale:

//-------------------------------------
#declare NrX = -10;     // start
#declare EndNrX = 10;   // end
#while (NrX < EndNrX+1)
object{
  Mast
  rotate<0,0,10*2*(rand(Random_1)-0.5)>
  translate<0,0,Nr*1.5>
} // end of object

 #declare NrX = NrX + 1;  //next Nr
#end // -------------- end of loop ----
File di scena per POV-Ray .pov or .txt

Questa scena si può migliorare con facilità, come si vede nell'immagine seguente:

click for higher resolution
Cliccare qui per un immagine in resoluzione più alto!
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
top

© Friedrich A. Lohmüller, 2013
www.f-lohmueller.de