#include "retalho.inc" background{ color rgb < 0.75, 0.80, 0.85 > } #declare txr = texture{ pigment{ color rgb < 0.90, 0.00, 0.60 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare txg = texture{ pigment{ color rgb < 0.10, 0.10, 0.50 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare txp = texture{ pigment{ color rgb < 0.00, 0.80, 0.50 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #macro poltrona(aa, ll, inc) #declare a0 = aa * 0.6; #declare a3 = aa * 0.4 * -1; #declare a1 = a0 / 4; #declare a2 = a0 / 4 * 3; #declare l1 = ll / 3; #declare l2 = ll / 3 * 2; #declare l3 = ll; #declare P1 = array[4][4]; #declare P2 = array[4][4]; #declare rad = 0.2; #declare xmin = 0; #declare ymin = 0; #declare xmax = 1; #declare ymax = 1; // Array P1 -------------------------------- #declare P1[0][0] = <0,0,20>; #declare P1[1][0] = ; #declare P1[2][0] = ; #declare P1[3][0] = ; #declare P1[0][1] = <0,l1,20>; #declare P1[1][1] = ; #declare P1[2][1] = ; #declare P1[3][1] = ; #declare P1[0][2] = <0,l2,20>; #declare P1[1][2] = ; #declare P1[2][2] = ; #declare P1[3][2] = ; #declare P1[0][3] = <0,l3,20>; #declare P1[1][3] = ; #declare P1[2][3] = ; #declare P1[3][3] = ; // Array P2 ------------------------------- #declare P2[0][0] = P1[3][0]; #declare P2[1][0] = P2[0][0] + <15,-10,20>; #declare P2[2][0] = P2[1][0] + <5,0,0>; #declare P2[3][0] = P2[2][0] + <10,0,-10>; #declare P2[0][1] = P1[3][1]; #declare P2[1][1] = P2[0][1] + <15,0,0>; #declare P2[2][1] = P2[1][1] + <5,0,0>; #declare P2[3][1] = P2[2][1] + <10,0,-10>; #declare P2[0][2] = P1[3][2]; #declare P2[1][2] = P2[0][2] + <15,0,0>; #declare P2[2][2] = P2[1][2] + <5,0,0>; #declare P2[3][2] = P2[2][2] + <10,0,-10>; #declare P2[0][3] = P1[3][3]; #declare P2[1][3] = P2[0][3] + <15,-10,20>; #declare P2[2][3] = P2[1][3] + <5,0,0>; #declare P2[3][3] = P2[2][3] + <10,0,-10>; // ---------------------------------------- union{ object{ retalho(P1,rad,txg,txr,xmin,ymin,xmax,ymax) } object{ retalho(P2,rad,txg,txr,xmin,ymin,xmax,ymax) } object{ box{ P1[3][0], P1[3][3] + <1,1,a3> } texture{ txp } } object{ box{ P1[3][0] + <0,0,a3>, P2[3][2] + <0,l1,10 + a3> } texture{ txp } } } #end #declare altura = 45; #declare largura = 35; #declare inclinacao = 1; union{ poltrona(altura, largura, inclinacao) } #include "camlight.inc" #declare centro_cena = < 25.00, 0.00, -2.00 >; #declare raio_cena = 70.0; #declare dir_camera = < 14.00, -19.00, 15.00 >; #declare dist_camera = 5*raio_cena; #declare intens_luz = 1.20; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)