// Last edited on DATE TIME by USER // Processed by remove-cam-lights background{ color rgb < 0.75, 0.80, 0.85 > } #declare tx_fosca = texture{ pigment{ color rgb < 1.00, 0.80, 0.10 > } finish{ diffuse 0.9 ambient 0.3 } } #declare tx_base = texture { pigment { image_map { jpeg "compre-baton.jpg" } rotate <0, 90, 0> } finish { diffuse 0.9 ambient 0.5 } } #declare tx_predio = texture { pigment { color rgb <0.0, 0.5, 0.5> } finish { diffuse 0.9 ambient 0.3 } } #declare tx_frente = texture { pigment { color rgb <0.0, 1, 0> } finish { diffuse 0.9 ambient 0.3 } } #declare tx_roda = texture { pigment { color rgb <0.0, 0.0, 1.0> } finish { diffuse 0.9 ambient 0.3 } } #declare txg = texture { pigment { color rgb <1.0, 0, 0> } finish { diffuse 0.9 ambient 0.3 } } #declare txp = texture { uv_mapping pigment { image_map { jpeg "brasil.jpg" } translate <-0.5, -0.5, 0> scale 1 rotate <0, 0, -90> translate <0.5, 0.5, 0> } finish { diffuse 0.9 ambient 0.5 } } #declare txp2 = texture { uv_mapping pigment { image_map { jpeg "brasil.jpg" } translate <-0.5, -0.5, 0> scale 1 rotate <0, 0, 0> translate <0.5, 0.5, 0> } finish { diffuse 0.9 ambient 0.5 } } #declare raio = 2.000; #declare cilindro = cylinder { <0,0,0>, <0,2,0>, 0.3 texture { tx_base } } #declare chao = box{ <-20,-20,-1>, <+20,+20,0> } #macro predio() union { object { box { <-1, -1, -1>, <1, 1, 1> } translate <0, 0, 1> scale <1, 1, 5> texture { tx_predio} } object { cylinder { <0, 0, 0>, <0, 0, 2>, 0.1 } translate <0, 0, 10> texture { tx_roda } } } #end #macro carcaca() union { object { retalho(r11, r12, r13, r14, r21, r22, r23, r24, r31, r32, r33, r34, r41, r42, r43, r44, raio, txg, txp) } object { retalho(a11, a12, a13, a14, a21, a22, a23, a24, a31, a32, a33, a34, a41, a42, a43, a44, raio, txg, txp) } object { retalho(b11, b12, b13, b14, b21, b22, b23, b24, b31, b32, b33, b34, b41, b42, b43, b44, raio, txg, txp) } object { retalho(c11, c12, c13, c14, c21, c22, c23, c24, c31, c32, c33, c34, c41, c42, c43, c44, raio, txg, txp) } } #end #macro defor(p) #local cons = -0.5 + sin(pi * p.y/3); #end #macro defor2(p) #local cons = -0.5 + sin(pi * p.y/4); #end #macro retalho_deformado(a11, a12, a13, a14, a21, a22, a23, a24, a31, a32, a33, a34, a41, a42, a43, a44) #local q11 = a11 + desloc(a11); #local q11 = a12 + desloc(a12); #local q11 = a13 + desloc(a13); #local q11 = a14 + desloc(a14); #local q11 = a21 + desloc(a21); #local q11 = a22 + desloc(a22); #local q11 = a23 + desloc(a23); #local q11 = a24 + desloc(a24); #local q11 = a31 + desloc(a31); #local q11 = a32 + desloc(a32); #local q11 = a33 + desloc(a33); #local q11 = a34 + desloc(a34); #local q11 = a41 + desloc(a41); #local q11 = a42 + desloc(a42); #local q11 = a43 + desloc(a43); #local q11 = a44 + desloc(a44); #end #macro aviao(r22, r23, r31, r33, a22, a23, a32, a33, b22, b23, b32, b33, c22, c23, c32, c33) #declare d1 = 0.3; #declare ele = 1.5; #declare s = 3/5; #local r11 = <0, -2/3, 3/3>; #local r12 = <0, -1/3, 3/3>; #local r13 = <0, -0.1, 3/3>; #local r21 = <0.1, -2/3, 3.2/3>; //#local r22 = <0.1, -0.2, 3.2/3>; #local r23 = <0.1, -0.2, 3.2/3>; #local r31 = <0.1, -2/3, 1/3>; //#local r32 = <0.1, -0.1, 2/3>; #local r33 = <0.1, -0.1, 2/3>; #local r41 = <0, -2/3, 0/3>; #local r42 = <0, -1/3, 0/3>; #local r43 = <0, -0.1, 0/3>; #local a12 = <0, 0, 3/3>; #local a13 = <0, 1/3, 3/3>; #local a14 = <0, 2/3, 3/3>; #local a24 = ; #local a34 = ; #local a42 = <0, 0, 0/3>; #local a43 = <0, 1/3, 0/3>; #local a44 = <0, 2/3, 0/3>; #local r14 = (r13 + r12)/2; #local a11 = r14; #local r24 = (r23 + r22)/2; #local a21 = r24; #local r34 = (r33 + r32)/2; #local a31 = r34; #local r44 = (r43 + r42)/2; #local a41 = r44; #local r11 = <0, r21.y, r21.z>; #local r12 = <0, r22.y, r22.z>; #local r13 = <0, r23.y, r23.z>; #local r14 = <0, r24.y, r24.z>; #local a11 = <0, a21.y, a21.z>; #local a12 = <0, a22.y, a22.z>; #local a13 = <0, a23.y, a23.z>; #local a14 = <0, a24.y, a24.z>; #local r41 = <0, r31.y, r31.z>; #local r42 = <0, r32.y, r32.z>; #local r43 = <0, r33.y, r33.z>; #local r44 = <0, r34.y, r34.z>; #local a41 = <0, a31.y, a31.z>; #local a42 = <0, a32.y, a32.z>; #local a43 = <0, a33.y, a33.z>; #local a44 = <0, a34.y, a34.z>; #local r11 = <0, r12.y, r12.z>; #local r21 = <0, r22.y, r22.z>; #local r31 = <0, r32.y, r32.z>; #local r41 = <0, r42.y, r42.z>; #local b12 = <0, 4/3, 3/3>; #local b13 = <0, 5/3, 3/3>; #local b14 = <0, 6/3, 3/3>; #local b24 = ; #local b34 = ; #local b42 = <0, 4/3, 0.0>; #local b43 = <0, 5/3, 0/3>; #local b44 = <0, 6/3, 0/3>; #local a14 = (a13 + b12)/2; #local b11 = a14; #local a24 = (a23 + b22)/2; #local b21 = a24; #local a34 = (a33 + b32)/2; #local b31 = a34; #local a44 = (a43 + b42)/2; #local b41 = a44; #local a11 = <0, a21.y, a21.z>; #local a12 = <0, a22.y, a22.z>; #local a13 = <0, a23.y, a23.z>; #local a14 = <0, a24.y, a24.z>; #local b11 = <0, b21.y, b21.z>; #local b12 = <0, b22.y, b22.z>; #local b13 = <0, b23.y, b23.z>; #local b14 = <0, b24.y, b24.z>; #local a41 = <0, a31.y, a31.z>; #local a42 = <0, a32.y, a32.z>; #local a43 = <0, a33.y, a33.z>; #local a44 = <0, a34.y, a34.z>; #local b41 = <0, b31.y, b31.z>; #local b42 = <0, b32.y, b32.z>; #local b43 = <0, b33.y, b33.z>; #local b44 = <0, b34.y, b34.z>; #local c12 = <0, 7/3, 3/3>; #local c13 = <0, 7.2/3, 3/3>; #local c14 = <0, 8/3, 3/3>; #local c24 = <0, 7.3/3, 1.5/3>; #local c34 = <0, 7.3/3, 1.3/3>; #local c42 = <0, 7/3, 0.0>; #local c43 = <0, 7.2/3, 0/3>; #local c44 = <0, 8/3, 0/3>; #local b14 = (b13 + c12)/2; #local c11 = b14; #local b24 = (b23 + c22)/2; #local c21 = b24; #local b34 = (b33 + c32)/2; #local c31 = b34; #local b44 = (b43 + c42)/2; #local c41 = b44; #local b11 = <0, b21.y, b21.z>; #local b12 = <0, b22.y, b22.z>; #local b13 = <0, b23.y, b23.z>; #local b14 = <0, b24.y, b24.z>; #local c11 = <0, c21.y, c21.z>; #local c12 = <0, c22.y, c22.z>; #local c13 = <0, c23.y, c23.z>; #local c14 = <0, c24.y, c24.z>; #local b41 = <0, b31.y, b31.z>; #local b42 = <0, b32.y, b32.z>; #local b43 = <0, b33.y, b33.z>; #local b44 = <0, b34.y, b34.z>; #local c41 = <0, c31.y, c31.z>; #local c42 = <0, c32.y, c32.z>; #local c43 = <0, c33.y, c33.z>; #local c44 = <0, c34.y, c34.z>; union { object { carcaca() } object { carcaca() scale <-1, 1, 1> } box { defor(<-1, -1, -1>), defor(<1, 1, 1>) texture {txp2 scale 0.5} scale <4, 0.1, 0.05> translate <0, 1.7, 0.5> } } #end #macro aviao_deformado(r22, r23, r32, r33, a22, a23, a32, a33, b22, b23, b32, b33, c22, c23, c32, c33, d1, d2) #local i22 = r22 + defor(r22)*d1 + defor2(r22)*d2; #local i23 = r23 + defor(r23)*d1 + defor2(r23)*d2; #local i32 = r32 + defor(r32)*d1 + defor2(r32)*d2; #local i33 = r33 + defor(r33)*d1 + defor2(r33)*d2; #local j22 = a22 + defor(a22)*d1 + defor2(a22)*d2; #local j23 = a23 + defor(a23)*d1 + defor2(a23)*d2; #local j32 = a32 + defor(a32)*d1 + defor2(a32)*d2; #local j33 = a33 + defor(a33)*d1 + defor2(a33)*d2; #local k22 = b22 + defor(b22)*d1 + defor2(b22)*d2; #local k23 = b23 + defor(b23)*d1 + defor2(b23)*d2; #local k32 = b32 + defor(b32)*d1 + defor2(b32)*d2; #local k33 = b33 + defor(b33)*d1 + defor2(b33)*d2; #local l22 = c22 + defor(c22)*d1 + defor2(c22)*d2; #local l23 = c23 + defor(c23)*d1 + defor2(c23)*d2; #local l32 = c32 + defor(c32)*d1 + defor2(c32)*d2; #local l33 = c33 + defor(c33)*d1 + defor2(c33)*d2; object { aviao(i22, i23, i32, i33, j22, j23, j32, j33, k22, k23, k32, k33, l22, l23, l32, l33) } #end #include "eixos.inc" #include "retalho.inc" union{ object{ eixos(3.00) } #declare d1 = 0.3; #declare ele = 1.5; #declare s = 3/5; #local r22 = <0.1, -1.1/3, 3.5/3>; #local r23 = <0.2, 0, 2/3>; #local r32 = <0.1, -1.1/3, 2.5/3>; #local r33 = <0.2, 0, 1/3>; #local a22 = ; #local a23 = ; #local a32 = ; #local a33 = ; #local b22 = ; #local b23 = ; #local b32 = ; #local b33 = ; #local c22 = ; #local c23 = ; #local c32 = ; #local c33 = ; #local raio = 0.00001; object { aviao_deformado(r22, r23, r32, r33, a22, a23, a32, a33, b22, b23, b32, b33, c22, c23, c32, c33, 1, 0) } object { aviao_deformado(r22, r23, r32, r33, a22, a23, a32, a33, b22, b23, b32, b33, c22, c23, c32, c33, 0, 1) translate <-3, 0, 0>} } #include "camlight.inc" #declare centro_cena = < 0.00, 1.00, 0.00 >; #declare raio_cena = 7; #declare dir_camera = < 1.00, 0.50, 0.500 >; #declare dist_camera = 7.0; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)