Descrizioni ed esempi per il raytracer POV-Ray di Friedrich A. Lohmüller
Esempi POV-Ray - Come fare oggetti per POV-Ray
English English English
Français français
Deutsch Deutsch

Home
- POV-Ray Tutorial

  - Esempi per POV-Ray
    Indice generale
  - Geometria
  - Architettura
  - Tecnica
    - Scala a Pioli
    - Piloni e Tralicci
    - Parapetto
    - Ponte
    - Tubi e Tubature
    - Bifucazione di Tubi
    - Rubinetto di Arresto
    - Catena
    - Bobina di filo
    - Torpedo
    - Cruise Missile
    - Razzo, Missile
    - Ruota
    - Camion
    - Elica
    - Aeroplano
    - Canoa
    - Chitarra
    - Display a 7 Segmenti
    - Cavo piatto
    - Fascio di cavi
                                       
 
Ladder

Scala a Pioli

con "macro" e while loop
Oggetti: cylinder.
Metodi:  #declare, #local, union, #macro, #while.

Un archivio include per usare quest'oggetto come
un oggetto pronto per l'uso per POV-Ray
si trova sulla paggina Oggetti POV-Ray

La "macro" seguente fai una scala a pioli. Qui dobbiamo definire il raggio dei cilindri laterali, il raggio dei gradini, la mezza larghezza dei gradini e anche l'altezza della scala e la distanza dei gradini. Il numero dei gradini si é calcolato dell'altezza e la distanza dei gradini in questa "macro". I gradini sono piazzati con un while loop.

Definizione delle dimensioni e testure:

//------------------------------ Dimenzioni
#declare LR1 = 0.025; // radius latteral
#declare LR2 = 0.010; // radius of steps
#declare LW = 0.23-LR1;// half width
#declare LH = 3.20;   // height
#declare Step_Distance = 0.25;
//--------------------------------- texture
#declare Texture_L =
 texture{pigment{color White}
         finish {diffuse 0.9 phong 1}} 

La "macro" :

//---------------------------------- Ladder
#macro Ladder (R1_L,R2_L,W_L,H_L,Step_Dist)
#local Step_Totals = int(H_L / Step_Dist);
#local Step =
      cylinder{<-W_L,0,0>,<W_L,0,0>,R2_L}

#local Nr  = 0;             // start
#local EndNr = Step_Totals; // end
union{
#while (Nr < EndNr)
 object{Step
        translate<0,(Nr+0.5)*Step_Dist,0>}
 #declare Nr = Nr + 1;  // next Nr
#end // --------------- end of loop
// cylinders latteral:
cylinder{<0,0,0>,<0,H_L,0>,R1_L
         translate< W_L,0,0>}
cylinder{<0,0,0>,<0,H_L,0>,R1_L
         translate<-W_L,0,0>}
 }// end of union
#end // end of macro  "Ladder (...)
//----------------------------------------- 

Richiamare l'oggetto "macro":

object{ Ladder(LR1,LR2,LW,LH,Step_Distance)
             texture{Texture_L}
      } // end of object
//------------------------------------- end 
Ladder
La descrizione di scena per POV-Ray:
"ladder.txt"
o "ladder.pov"
 
Oggetti pronto per l'uso per POV-Ray
come Archivi include con archivi esempio
si trova sulla paggina Oggetti POV-Ray.
top

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