#include "colors.inc" #include "woods.inc" #include "golds.inc" #include "textures.inc" /*camera{ orthographic location <50,50,100> look_at <0,0,0> angle 110 } background{color Gray90} light_source{<50,150,100> color White} */ // Tous les éléments de l'horloge sont construits avec des objets CSG // Création de la partie principale de l'horloge // La différence entre le cône et les 4 box permet de donner au corps une forme pyramidale qui a les angles arrondis #declare corps= difference{ cone{<0,60,0> 20 <0,-60,0> 25 } box {<30,70,-50> <20,-70,50> rotate 2*z} box {<-30,70,-50> <-20,-70,50> rotate -2*z} box {<50,70,20> <-20,-70,30> rotate -2*x} box {<50,70,-20> <-20,-70,-30> rotate 2*x} // La différence entre le cône principal et ce qui suit permet de créer le trou dans le corps pour voir le balancier cone{<0,58,0> 15 <0,-58,0> 20} cone {<0,40,20> 8 <0,-30,20> 12} sphere {<0,-30,20> 15} texture {T_Wood14 scale 80 } } // Partie qui balance #declare pendule= union{ intersection { sphere {<0,-28,25> 15} sphere {<0,-28,5> 15} texture {Gold_Metal} } intersection { cone {<0,58,15> 5 <0,-25,15> 10} cone {<0,58,9> 5 <0,-25,9> 10} texture {Gold_Metal} } } // Création du pied de l'horloge // Le pied de l'horloge est construit de la même manière que le corps #declare pied2= union { difference{ cone{<0,-60,0> 25 <0,-90,0> 30 } box {<30,-50,-50> <20,-100,50> rotate 2*z} box {<-30,-50,-50> <-20,-100,50> rotate -2*z} box {<50,-50,20> <-20,-100,30> rotate -2*x} box {<50,-50,-20> <-20,-100,-30> rotate 2*x} texture {T_Wood14 scale 80 } } cylinder{<-17,-90,17> <-17,-95,17> 5} cylinder{<-17,-90,-17> <-17,-95,-17> 5} cylinder{<17,-90,17> <17,-95,17> 5} cylinder{<17,-90,-17> <17,-95,-17> 5} texture {T_Wood14 scale 80 } } // Création de la partie supérieur qui contient la montre #declare tete= union{ difference{ cylinder{<0,60,0> <0,110,0> 22} cylinder{<0,60,0> <0,110,0> 20} box {<30,50,-50> <20,120,50>} box {<-30,50,-50> <-20,120,50> } box {<50,50,20> <-20,120,30> } box {<50,50,-20> <-20,120,-30>} sphere {<0,85,22> 18} texture {T_Wood14 scale 80 } } // Insertion de l'image de la montre dans la tête de l'horloge box {<18,-40,12> <-18,20,10> pigment {image_map {jpeg "Horloge.jpg" once} scale <-18,30,10>} translate <9,34,-4.8> scale 1.9 } difference{ box{<-21,110,-21> <21,115,21>} box{<-18,110,-18> <18,117,18>} texture {T_Wood14 scale 80 } } } // Création de la partie de l'horloge qui sépare la tête de l'horloge du corps, et le corps du pied #declare separateur= union{ box{<-23,-58,-23> <23,-62,23>} cylinder{<-23,-60,23> <23,-60,23> 2} cylinder{<23,-60,-23> <23,-60,23> 2} cylinder{<-23,-60,-23> <23,-60,-23> 2} cylinder{<-23,-60,-23> <-23,-60,23> 2} sphere {<23,-60,23> 2} sphere {<-23,-60,23> 2} sphere {<23,-60,-23> 2} sphere {<-23,-60,-23> 2} texture {T_Wood14 scale 80 } } // Assemblage des éléments de l'horloge #declare horloge= union{ object{corps finish{phong 1}} object{pendule finish{phong 1}} object{pied2 finish{phong 1}} object{separateur finish{phong 1}} object{separateur scale 0.9 translate 115*y finish{phong 1}} object{tete finish{phong 1}} } //object {horloge}