// Last edited on DATE TIME by USER // Processed by remove-cam-lights 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 tx_azul = texture{ pigment{ color rgb < 0.00, 0.00, 1.00 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_vermelho = texture{ pigment{ color rgb < 1.00, 0.00, 0.00 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_verde = texture{ pigment{ color rgb < 0.00, 1.00, 0.00 > } finish{ diffuse 0.9 ambient 0.1 } #declare tx_amarelo = texture{ pigment{ color rgb < 1.00, 1.00, 0.00 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_cinza = texture{ pigment{ color rgb < 0.80, 0.80, 0.80 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_grafite = texture{ pigment{ color rgb < 0.70, 0.70, 0.70 > } finish{ diffuse 0.7 ambient 0.1 specular 0.25 } } #declare tx_prata = texture{ pigment{ color rgb < 0.75, 0.75, 0.75 > } finish{ diffuse 0.9 ambient 0.3 specular 0.25 } } } #include "retalho.inc" #declare A = array[4][4]; #declare A[0][0] = < 0,0,1 >; #declare A[0][1] = < 0,1,1.2 >; #declare A[0][2] = < 0,2,1.2 >; #declare A[0][3] = < 0,3,1 >; #declare A[1][0] = < -0.5,0,2.5 >; #declare A[1][1] = < -0.5,1,2.5 >; #declare A[1][2] = < -0.5,2,2.5 >; #declare A[1][3] = < -0.5,3,2 >; #declare A[2][0] = < 1,0,3 >; #declare A[2][1] = < 1,1,3.5 >; #declare A[2][2] = < 1,2,3.5 >; #declare A[2][3] = < 1,3,3 >; #declare A[3][0] = < 0.5,0,4 >; #declare A[3][1] = < 0.5,1,4.5 >; #declare A[3][2] = < 0.5,2,4.5 >; #declare A[3][3] = < 0.5,3,4 >; #macro meio_sofa( ) union{ #local A = array[4][4] #local A[0][0] = < 0,0,1 >; #local A[0][1] = < 0,1,1.2 >; #local A[0][2] = < 0,2,1.2 >; #local A[0][3] = < 0,3,1 >; #local A[1][0] = < -0.5,0,2.5 >; #local A[1][1] = < -0.5,1,2.5 >; #local A[1][2] = < -0.5,2,2.5 >; #local A[1][3] = < -0.5,3,2 >; #local A[2][0] = < 1,0,3 >; #local A[2][1] = < 1,1,3.5 >; #local A[2][2] = < 1,2,3.5 >; #local A[2][3] = < 1,3,3 >; #local A[3][0] = < 0.5,0,4 >; #local A[3][1] = < 0.5,1,4.5 >; #local A[3][2] = < 0.5,2,4.5 >; #local A[3][3] = < 0.5,3,4 >; #local B = array[4][4] #local B[0][0] = A[0][0]; #local B[0][1] = A[0][1]; #local B[0][2] = A[0][2]; #local B[0][3] = A[0][3]; #local B[1][0] = A[1][0]; #local B[1][1] = < -1.5,1,2.5 >; #local B[1][2] = < -1.5,2,2.5 >; #local B[1][3] = A[1][3]; #local B[2][0] = A[2][0]; #local B[2][1] = < 0.5,1,3.5 >; #local B[2][2] = < 0.5,2,3.5 >; #local B[2][3] = A[2][3]; #local B[3][0] = A[3][0]; #local B[3][1] = A[3][1]; #local B[3][2] = A[3][2]; #local B[3][3] = A[3][3]; #local C = array[4][4] #local C[0][0] = B[0][0]; #local C[0][1] = B[0][1]; #local C[0][2] = B[0][2]; #local C[0][3] = B[0][3]; #local C[1][0] = < 0.75 , 0.75 , 1.2 >; #local C[1][1] = < 0.75 , 1.5 , 1.2 >; #local C[1][2] = < 0.75 , 2.25 , 1.2 >; #local C[1][3] = < 0.75 , 3 , 1.2 >; #local C[2][0] = < 1.5,0.75,1.5 >; #local C[2][1] = < 1.5,1.5,1.5 >; #local C[2][2] = < 1.5,2.25,1.5 >; #local C[2][3] = < 1.5,3,1.5 >; #local C[3][0] = < 3,0.75,1 >; #local C[3][1] = < 3,1.5,1 >; #local C[3][2] = < 3,2.25,1 >; #local C[3][3] = < 3,3,1 >; #local D = array[4][4] #local D[0][0] = C[0][0]; #local D[0][1] = C[0][1]; #local D[0][2] = C[0][2]; #local D[0][3] = C[0][3]; #local D[1][0] = < 1.5,0.75,0.8 >; #local D[1][1] = < 1.5,1.5,0.8 >; #local D[1][2] = < 1.5,2.25,0.8 >; #local D[1][3] = < 1.5,3,0.8 >; #local D[2][0] = < 3,0.75,1 >; #local D[2][1] = < 3,1.5,1 >; #local D[2][2] = < 3,2.25,1 >; #local D[2][3] = < 3,3,1 >; #local D[3][0] = C[3][0]; #local D[3][1] = C[3][1]; #local D[3][2] = C[3][2]; #local D[3][3] = C[3][3]; object{ retalho ( A[0][0], A[0][1],A[0][2],A[0][3], A[1][0],A[1][1],A[1][2],A[1][3], A[2][0],A[2][1],A[2][2],A[2][3], A[3][0],A[3][1],A[3][2],A[3][3], 0.01, texture{tx_cinza}, texture{tx_plastico} ) } object{ retalho ( B[0][0], B[0][1],B[0][2],B[0][3], B[1][0],B[1][1],B[1][2],B[1][3], B[2][0],B[2][1],B[2][2],B[2][3], B[3][0],B[3][1],B[3][2],B[3][3], 0.01, texture{tx_cinza}, texture{tx_plastico} ) } object{ retalho ( C[0][0], C[0][1],C[0][2],C[0][3], C[1][0],C[1][1],C[1][2],C[1][3], C[2][0],C[2][1],C[2][2],C[2][3], C[3][0],C[3][1],C[3][2],C[3][3], 0.01, texture{tx_cinza}, texture{tx_plastico} ) } object{ retalho ( D[0][0], D[0][1],D[0][2],D[0][3], D[1][0],D[1][1],D[1][2],D[1][3], D[2][0],D[2][1],D[2][2],D[2][3], D[3][0],D[3][1],D[3][2],D[3][3], 0.01, texture{tx_cinza}, texture{tx_plastico} ) } } #end #macro bola (r) sphere{ < 0,0,0 >, r } #end #macro caixa ( a, b, c ) box{ < 0, 0, 0 >, < a, b, c > } #end #macro pino (a, b, c, r) cylinder{ < 0, 0, 0 >, < a, b, c >, r } #end #macro botoes (k,n) // iniciando de k ate n union{ #declare i = k; #while ( i < n ) #if ( mod( i, 2 ) = 0 ) // variaçao com elementos pares box{ < 0+i, 0, 0 >, < 0.2+i, 0.1, 0.1 > texture{ tx_vermelho } } #else box{ < 0+i, 0, 0 >, < 0.2+i, 0.1, 0.1 > texture{ tx_azul } } #end #declare i = i + 1; #end } #end #include "eixos.inc" union{ object{ eixos(3.00) } object{ meio_sofa() } } #include "camlight.inc" #declare centro_cena = < 0.00, 0.00, 1.00 >; #declare raio_cena = 6.0; #declare dir_camera = < 14.00, 40.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)