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

Casualità con POV-Ray  - parte 2    
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
                                     
La collocazione aleatoria quadratica e cubica      

Qui possiamo vedere come si può arrangiare oggetti bidimensionale e tridimensionale con una irregolarià casuale.
Usiamo una serie di sfere che arrangiamo con un while loop.

Qui l'arrangiamento bidimensionale
in un piano:

//--------------------------------------
// Choosing random series:
#declare Random_1 = seed (2655);
#declare Random_2 = seed (1153);
//--------------------------------
union{
 // outer loop -------------------
 #declare NrX = - 2.5;  // start x
 #declare EndNrX =  2.5;// end   x
 #while (NrX< EndNrX+1)
  // inner loop ------------------
  #declare NrZ = 0;     // start z
  #declare EndNrZ =  5; // end   z
  #while (NrZ< EndNrZ+1)

  sphere{ <0,0,0>, 0.5
    texture{ pigment{color rgb<1,.65,0>}
             finish {phong 1}
           } // end of texture
    // Reguläre Anordnung:
    //translate< 2*NrX, 0.5, 2*NrZ>

    // Anordung mit Zufall:
    translate
     < 2*NrX+1.5*(-0.5+rand(Random_1)),
       0.5,
       2*NrZ+1.5*(-0.5+rand(Random_2))
     >
  } // end of sphere --------------

  #declare NrZ = NrZ + 1; // next Nr z
  #end // -------------- end of loop z
  // end inner loop
 #declare NrX = NrX + 1;  // next Nr x
 #end // --------------- end of loop x
// end of outer loop
} // end of union ----------------------

 
 
 
 
File di scena per POV-Ray .pov o .txt

E poi lo stesso in tridimensionale:

//------------------------------------
// Choosing random series:
#declare Random_0 = seed (91125);
#declare Random_1 = seed (2655);
#declare Random_2 = seed (1153);
//--------------------------------
union{
 // outer loop -------------------
#declare NrX = -3;  // start x
#declare EndNrX =  3;// end   x
#while (NrX< EndNrX+1)
 // more inner loop --------------
 #declare NrY = -3;   // start y
 #declare EndNrY = 3; // end   y
 #while (NrY< EndNrY+1)
  // innerst loop ----------------
  #declare NrZ = -3;   // start z
  #declare EndNrZ = 3; // end   z
  #while (NrZ< EndNrZ+1)

  sphere{ <0,0,0>, 0.15
   texture{pigment{color rgb<1,.65,0>}
           finish {phong 1}
          } // end of texture
   // Reguläre Anordnung:
   //translate<0.5*NrX,0.5*NrY,0.5*NrZ>

   // Anordung mit Zufall:
   translate
   <0.5*NrX+0.25*(-0.5+rand(Random_0)),
    0.5*NrY+0.25*(-0.5+rand(Random_1)),
    0.5*NrZ+0.25*(-0.5+rand(Random_2))>
  } // end of sphere --------------

  #declare NrZ = NrZ + 1; // next Nr z
  #end // -------------- end of loop z
  // end innerst loop
 #declare NrY = NrY + 1; // next Nr y
 #end // -------------- end of loop y
 // end more inner loop
#declare NrX = NrX + 1;  // next Nr x
#end // --------------- end of loop x
// end of outer loop
rotate <0,-40,0>
translate <0,2,2>}
} // end of union --------------------
File di scena per POV-Ray .pov o .txt

 
 
 
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8
top

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