// 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.10, 1.00 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare tx_plastico_amarelo = texture{ pigment{ color rgb < 1.0, 0.65, 0 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare tx_fosca = texture{ pigment{ color rgb < 0.00, 1.00, 0.10 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_espelho = texture{ pigment{ color rgb < 0.5, 0.5, 0.5 > } 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 roda = cylinder { <0.0, 0.0, 0.0>, <0.25, 0.0, 0.0>, 1.0 } #declare turbina = cone { <0.0, 0.0, 0.0>, 1.0, <0.0, 3.0, 0.0>, 0.25 } #declare encosto = union { box { <0.0, 0.0, 0.0>, <11.0, 1.0, 4.0> } } #declare braco = union { box { <0.0, 0.0, 0.0>, <1.0, 4.0, 3.0> } } #declare asa = union { box { <0.0, 0.0, 0.0>, <2.0, 1.0, 0.25> } object{turbina translate<2.5, -1.0, 0.0>} } #declare fundo = union { box { <0.0, 0.0, 0.0>, <11.0, 5.0, -1.0> } } #declare eixo = cylinder { <1.0, 2.5, -2.0>, <11.0, 2.5, -2.0>, 0.25 } union { object{encosto texture{tx_plastico}} object{braco translate<0.0, 1.0, 0.0> texture{tx_plastico}} object{braco translate<10.0, 1.0, 0.0> texture{tx_plastico}} object{asa translate<11.0, 2.0, 1.5> texture{tx_fosca}} object{asa rotate<180, 0.0, 180> translate<0.0, 2.0, 1.5> texture{tx_fosca}} object{fundo texture{tx_plastico}} object{eixo texture{tx_vidro}} object{eixo scale<0.5, 1, 1> rotate<0.0, 0.0, 90> translate<8, 1.5, 0.0> texture{tx_vidro}} object{eixo scale<0.125, 1, 1> rotate<0.0, 90, 0> translate<7.5, 4.5, -1.25> texture{tx_vidro}} object{eixo scale<0.25, 1, 1> translate<4.0, 4.5, -0.50> texture{tx_vidro}} object{roda translate<0.0, 2.5, -2.0> texture{tx_plastico_amarelo}} object{roda translate<11.0, 2.5, -2.0> texture{tx_plastico_amarelo}} object{roda translate<3.9, 6.5, -2.5> texture{tx_plastico_amarelo}} object{roda translate<6.7, 6.5, -2.5> texture{tx_plastico_amarelo}} #declare A = array[4][4]; #declare A[0][0] = <0.0, 0.0, 0.0>; #declare A[0][1] = <1.0, 0.0, 0.0>; #declare A[0][2] = <2.0, 0.0, 0.0>; #declare A[0][3] = <3.0, 0.0, 0.0>; #declare A[1][0] = <0.0, 1.2, 0.0>; #declare A[1][1] = <1.0, 1.2, 1.0>; #declare A[1][2] = <2.0, 1.2, 1.0>; #declare A[1][3] = <3.0, 1.2, 0.0>; #declare A[2][0] = <0.0, 2.5, 0.0>; #declare A[2][1] = <1.0, 2.5, 1.0>; #declare A[2][2] = <2.0, 2.5, 1.0>; #declare A[2][3] = <3.0, 2.5, 0.0>; #declare A[3][0] = <0.0, 4.0, 0.0>; #declare A[3][1] = <1.0, 4.0, 0.0>; #declare A[3][2] = <2.0, 4.0, 0.0>; #declare A[3][3] = <3.0, 4.0, 0.0>; 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.00001, tx_fosca, tx_plastico ) translate<1.0, 1.0, 0.0> } 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.00001, tx_fosca, tx_plastico ) translate<4.0, 1.0, 0.0> } 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.00001, tx_fosca, tx_plastico ) translate<7.0, 1.0, 0.0> } 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.00001, tx_fosca, tx_plastico ) rotate<90, 0, 0.0> rotate<0, 0, 180> translate<4.0, 1.0, 0.0> } 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.00001, tx_fosca, tx_plastico ) rotate<90, 0, 0> rotate<0, 0, 180> translate<7.0, 1.0, 0.0> } 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.00001, tx_fosca, tx_plastico ) rotate<90, 0, 0> rotate<0, 0, 180> translate<10.0, 1.0, 0.0> } } #include "camlight.inc" #declare centro_cena = < 6.00, 3.00, 2.00 >; #declare raio_cena = 12.0; #declare dir_camera = < 0.00, 6.10, 2.00 >; #declare dist_camera = 18.0; #declare intens_luz = 0.60; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)