// // a cylindric wall // #version 3.1; global_settings { assumed_gamma 1.0 } camera { location <-7, 4, -7.0> look_at <-1, 2.0, -1> } light_source { <-40,40,0> color rgb <1,1,1> } sky_sphere { pigment { gradient y color_map { [0.0 color blue 0.6] [1.0 color rgb 1] } } } plane {y,0 pigment {color rgb <.2,.6,.2>} } // // parameters : you can play with // but be careful of light and camera positions. // #declare Nb_p=40; // number of pieces #declare Rayon=12; // radius of the cylindric wall : be careful of light and camera position #declare Rapport=20; // rapport entre la largeur de la plaque et epaisseur du croisillon : // sorry no english #declare Haut_Tot=7; // the wall is 7 units high // // the maths // #declare Ang_b=360/Nb_p; #declare Largeur=2*Rayon*sin(radians(Ang_b/2)); #declare Distance=Rayon*cos(radians(Ang_b/2)); // a piece is a square // but the wall must be 7 units high !!! // so i resize it if necessary #declare Nb_Cop=int(Haut_Tot/Largeur); #if (Nb_Cop != Haut_Tot/Largeur) #if (Nb_Cop<1) #declare Nb_Cop=1; #end #declare Hauteur=Haut_Tot/Nb_Cop; #end #declare Paroi=difference { box{<-Largeur/2,0,0>,} box{<-Largeur/2+Largeur/(Rapport*2),Largeur/(Rapport*2),-.1>, } } #declare Mur=union { #declare Nb=1; #while (Nb} finish {specular .5 roughness 0.04} }