Descriptions et exemples pour le POV-Ray raytracer par Friedrich A. Lohmueller
      Objets POV-Ray - Comment faire des objets pour POV-Ray
English English English
Italiano  Italiano
Deutsch 

Page d'Accueil
- POV-Ray Tutorial

  - Exemples POV-Ray
   Table des matières
  - Geometrie
    - Pion
    - Cube au grillage
    - Octogone
    - Œuf - Ovoïde
    - Ètoile
    - Lentille optique
    - Échiquier
    - Forme ballon monocol
    - Forme de Erlenmeyer
    - Deux cylindres fondus
    - Tétraèdre régulier
    - Triangle de Penrose
    - Yin & Yang
    - Poissons
    - 3 Poissons
    - Feuille de Trèfle
  - Architecture
  - Technique
                                               
 
Wireframe Cube

Cube au grillage

La Construction de un cube formé de tubes.
Example pour utiliser du commande "union".
Objets:   "sphere", "cylinder".
Méthodes: "#declare", "union{...}", "object{...}"

Note: C'est seulement une exercice pour faire-se aux coordonnées en 3D et aux méthodes.
On peut obtenir le même résultat avec #include "shapes.inc"
et le macro "object{ Wire_Box(<-1,-1,-1>,<1,1,1>, 0.20, 0)} .


The construction in details:

Les tubes sont arrangées en mode symétrique autour du centre. Les angles sont formés de sphères avec le même rayon come les cylindres. On peut definer le rayon utilisant le commande "#declare" pour faciliter la modification des rayons. Le cube en tout est definé comme un objet nouveauz nomé "BigCube1". En cette manière il est très facile de faire usage de cet objet à plusieurs reprises avec le commande :

object{ BigCube1
        rotate<...> translate<...>}
- comme on peut voir à l'exemple prochain.
Vue de face, vue de droit et plongée.

//=== Cube formé par des tubes ===
#declare R = 0.20; //rayon des tubes
#declare BigCube1 =
union{
// 8 Corners
sphere{<-1,-1,-1>,R}
sphere{< 1,-1,-1>,R}
sphere{<-1,-1, 1>,R}
sphere{< 1,-1, 1>,R}
sphere{<-1, 1,-1>,R}
sphere{< 1, 1,-1>,R}
sphere{<-1, 1, 1>,R}
sphere{< 1, 1, 1>,R}
// 4 in x direction
cylinder {<-1,-1,-1>,< 1,-1,-1>,R}
cylinder {<-1,-1, 1>,< 1,-1, 1>,R}
cylinder {<-1, 1,-1>,< 1, 1,-1>,R}
cylinder {<-1, 1, 1>,< 1, 1, 1>,R}
// 4 in y direction
cylinder {<-1,-1,-1>,<-1, 1,-1>,R}
cylinder {<-1,-1, 1>,<-1, 1, 1>,R}
cylinder {< 1,-1,-1>,< 1, 1,-1>,R}
cylinder {< 1,-1, 1>,< 1, 1, 1>,R}
// 4 in z direction
cylinder {<-1,-1,-1>,<-1,-1, 1>,R}
cylinder {<-1, 1,-1>,<-1, 1, 1>,R}
cylinder {< 1,-1,-1>,< 1,-1, 1>,R}
cylinder {< 1, 1,-1>,< 1, 1, 1>,R}
texture{pigment{color rgb<1,0.8,0>}
        finish{ diffuse 0.9 phong 1}}
}//-- End of wireframed cube -------

//------------- Draw it  -----------
object{BigCube1 scale 0.7
       rotate<0,60,0>
       translate<0,1.2,0>}
//------------------------------ end

    Nous avons l'image suivant :
Wireframe Cube 600x450
Une description de la scène
pour POV-Ray :
"povcube0.txt" ou "povcube0.pov"

Quelques variations de ce thème :

Changez la ligne dans la description marquée avec //<---1
comme suit :

camera {Cam1}
et les lignes après la marque //<---2
comme suit :
        color_map{[0    color Blue]
                  [0.45 color White]
                  [0.55 color White]
                  [1.0  color Blue]}
       scale 2 translate<0,-1,0>}
et la ligne marquée avec //<---3
comme suit :
#declare R = 0.25 //rayon des tubes
et aussi les lignesaprès la marque //<---4
comme suit :
texture{
    Polished_Chrome
    pigment{quick_color rgb<1,0.8,0>}
    finish {diffuse 0.9 phong 1}}
}//-- end of wireframe cube ---------
//----------- drawing  --------------
union{
 object{ BigCube1 scale 0.7
         translate< 0.0, 0.0, 0.0>}
 object{ BigCube1 scale 0.4
         translate< 0.7, 0.7,-0.7>}
 rotate<-45,65,0>
 rotate<10,0,0>
 translate<0.3,0.8,0>}
--------------------------------- end 
    L'image resultante :
 
Wireframe Cube 600x450

top

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