// Last edited on DATE TIME by USER // Processed by remove-cam-lights #include "retalho.inc" background{ color rgb < 0.75, 0.80, 0.85 > } #declare tx_plastico = texture{ pigment{ color rgb < 0.10, 0.80, 1.00 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare tx_fosca = texture{ pigment{ color rgb < 1.00, 0.80, 0.10 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_espelho = texture{ pigment{ color rgb < 1.00, 0.85, 0.30 > } finish{ diffuse 0.2 reflection 0.7*< 1.00, 0.85, 0.30 > ambient 0.1 } } #declare tx_vidro = texture{ pigment{ color rgb < 0.85, 0.95, 1.00 > filter 0.70 } finish{ diffuse 0.03 reflection 0.25 ambient 0.02 specular 0.25 roughness 0.005 } } #declare tx_xadrez = texture{ pigment{ checker color rgb < 0.10, 0.32, 0.60 >, color rgb < 1.00, 0.97, 0.90 > } finish{ diffuse 0.9 ambient 0.1 } scale 2.0 } #declare braco_cadeira = box {<0,0,0>,<1,0.5,1> texture {tx_fosca} } #declare chao = box{ <-20,-20,-1>, <+20,+20,0> } #declare meu_retalho = retalho (<0,0,0>, <0,0,1>, <0,1,0>, <0,1,1>, <1,0,0>, <1,0,1>, <1,1,0>, <1,1,1>, <0,0,2>, <0,1,2>, <0,2,2>, <2,2,2>, <2,0,1>, <2,0,0>, <2,2,1>, <1,2,1>, 0.000000001, tx_fosca, tx_plastico) #declare h = 3; #declare e = 1; #declare l = 3; #declare borda_inferior = array[4] {<0,0,0>,<0,l/3,0>,<0,2*l/3,0>,<0,l,0>} #macro linha_acima_borda (ff) #declare lab = array[4] {<0,0,h/3>,<1*ff+0.1,l/3,h/3>,<1*ff+0.1,2*l/3,h/3>,<0,l,h/3>} #end #macro linha_baixo_borda (ff) #declare lbb = array[4] {,,,} #end #macro encosto_frente (ff,m) linha_acima_borda (ff) linha_baixo_borda (ff) #declare S = array[4][4] { {<0,0,h>,<0,l/3,h>,<0,2*l/3,h>,<0,l,h>}, {<0,0,2*h/3>,<1*ff+0.1,l/3,2*h/3>,<1*ff+0.1,2*l/3,2*h/3>,<0,l,2*h/3>}, {lab[0],lab[1],lab[2],lab[3],}, {(lab[0]+lbb[0])/2,(lab[1]+lbb[1])/2,(lab[2]+lbb[2])/2,(lab[3]+lbb[3])/2} //para junta suave } retalho(S[0][0],S[0][1],S[0][2],S[0][3],S[1][0],S[1][1],S[1][2],S[1][3],S[2][0],S[2][1],S[2][2],S[2][3],S[3][0],S[3][1],S[3][2],S[3][3], 0.001, tx_fosca, tx_plastico) #end #macro acento_cima (ff, m) linha_acima_borda (ff) linha_baixo_borda (ff) #declare S = array[4][4] { {(lab[0]+lbb[0])/2,(lab[1]+lbb[1])/2,(lab[2]+lbb[2])/2,(lab[3]+lbb[3])/2}, //para junta suave {,,,}, {<2*h/3,0,0>,<2*h/3,l/3,0.9*ff+0.1>,<2*h/3,2*l/3,0.9*ff+0.1>,<2*h/3,l,0>}, {,,,} } retalho(S[0][0],S[0][1],S[0][2],S[0][3],S[1][0],S[1][1],S[1][2],S[1][3],S[2][0],S[2][1],S[2][2],S[2][3],S[3][0],S[3][1],S[3][2],S[3][3], 0.001, tx_fosca, tx_plastico) #end #macro acento_baixo (ff, m) #declare S = array[4][4] { {m[0],m[1],m[2],m[3]}, {,,,}, {<2*h/3,0,0>,<2*h/3,l/3,-0.9*ff-0.1>,<2*h/3,2*l/3,-0.9*ff-0.1>,<2*h/3,l,0>}, {,,,} } retalho(S[0][0],S[0][1],S[0][2],S[0][3],S[1][0],S[1][1],S[1][2],S[1][3],S[2][0],S[2][1],S[2][2],S[2][3],S[3][0],S[3][1],S[3][2],S[3][3], 0.001, tx_fosca, tx_plastico) #end #include "eixos.inc" union{ object{ eixos(3.00) } object{ chao translate < 0,0,-5 > texture{ tx_xadrez } } object { encosto_frente (1,borda_inferior) } object { acento_cima (1,borda_inferior) } object { acento_baixo (1,borda_inferior) } object { encosto_frente (0,borda_inferior) translate <0,-4,0> } object { acento_cima (0,borda_inferior) translate <0,-4,0>} object { acento_baixo (0,borda_inferior) translate <0,-4,0>} } #include "camlight.inc" #declare centro_cena = < 0.00, 0.00, 1.00 >; #declare raio_cena = 6.0; #declare dir_camera = < 14.00, 7.00, 4.00 >; #declare dist_camera = 16.0; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)