// Last edited on 2009-10-11 21:42:19 by stolfilocal // Processed by remove-cam-lights #include "nuvens.inc" #macro eixo(ponta,cor,nome) union{ sphere{ <0,0,0>, 0.02 } cylinder{ <0,0,0>, 0.91*ponta, 0.02 } cone{ 0.90*ponta, 0.06, ponta, 0.00 } texture{ pigment{ color rgb cor } finish{ ambient 0.5 diffuse 0.5 } } } #end #macro eixos(tamanho) union{ object{ eixo( , <1.0,0.2,0.2>, "X") } object{ eixo( <0,tamanho,0>, <0.0,0.8,0.0>, "Y") } object{ eixo( <0,0,tamanho>, <0.3,0.3,1.0>, "Z") } } #end #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_textura = texture{ pigment{ color rgb < 0, 0, 0 > } finish{ diffuse 0.3 ambient 0.2 reflection 0.5*<1,1,1> } } #declare tx_fosca = texture{ pigment{ color rgb < 1.00, 0.80, 0.10 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_parede = texture{ pigment{ color rgb < 0.9, 0.9, 0.9 > } finish{ diffuse 0.9 ambient 0.1 } } #declare tx_espelho = texture{ pigment{ color rgb < 1.00, 0.90, 0.70 > } finish{ diffuse 0.1 reflection 0.8*< 1.00, 0.90, 0.70 > ambient 0.1 } } #declare tx_vidro2 = texture{ pigment{ color rgb < 0.97, 0.98, 1.00 > filter 0.70 } finish{ diffuse 0.03 reflection 0.25 ambient 0.02 specular 0.25 roughness 0.005 } } #declare tx_vidro = texture{ pigment{ color rgb < 0.99, 1, 1.00 > filter 0.70 } finish{ diffuse 0.03 reflection 0.25 ambient 0.02 specular 0.25 roughness 0.005 } } #declare raio = 2.000; #declare sz=0.4; #include "retalho.inc" #declare p11=<1,-1.3,0>; #declare p12=<1,-1,2*sz>; #declare p13=<1,-.5,2*sz>; #declare p21=<2,-1.2,0>; #declare p22=<2,-1,1>; #declare p23=<2,-.5,1>; #declare p31=<3,-1.1,0>; #declare p32=<3,-1,1>; #declare p33=<3,-.5,1>; #declare p41=<3.2,-1.05,0>; #declare p42=<3.2,-1,0>; #declare p43=<3.2,-.5,-.16>; #declare q12=<1,0,2*sz>; #declare q13=<1,.5,2*sz>; #declare q14=<1,1,2*sz>; #declare q22=<2,0,1>; #declare q23=<2,.5,1>; #declare q24=<2,1,1>; #declare q32=<3,0,1>; #declare q33=<3,.5,1>; #declare q34=<3,1,0>; #declare q42=<3.2,0,0.5>; #declare q43=<3.2,.5,0.5>; #declare q44=<3.2,1,0>; #declare p14=(p13+q12)/2; #declare p24=(p23+q22)/2; #declare p34=(p33+q32)/2; #declare p44=(p43+q42)/2; #declare q11=p14; #declare q21=p24; #declare q31=p34; #declare q41=p44; #declare r12=<1,1,4*sz>; #declare r13=<1,2,4*sz>; #declare r14=<1,3,4*sz>; #declare r22=<2,1,4*sz>; #declare r23=<2,2,4*sz>; #declare r24=<2,3,4*sz>; #declare r32=<3,1,1>; #declare r33=<3,2,1>; #declare r34=<3,3,0>; #declare r42=<3.2,1,-.16>; #declare r43=<3.2,2,0>; #declare r44=<3.2,3,0>; #declare q14=(q13+r12)/2; #declare q24=(q23+r22)/2; #declare q34=(q33+r32)/2; #declare q44=(q43+r42)/2; #declare r11=q14; #declare r21=q24; #declare r31=q34; #declare r41=q44; #declare s12=<1,4,4*sz>; #declare s13=<1,4.5,4*sz>; #declare s14=<1,5,4*sz>; #declare s22=<2,4,4*sz>; #declare s23=<2,4.5,4*sz>; #declare s24=<2,5,4*sz>; #declare s32=<3,4,1>; #declare s33=<3,4.5,1>; #declare s34=<3,5,0>; #declare s42=<3.2,4,0>; #declare s43=<3.2,4.5,0>; #declare s44=<3.2,5,-0.26>; #declare r14=(r13+s12)/2; #declare r24=(r23+s22)/2; #declare r34=(r33+s32)/2; #declare r44=(r43+s42)/2; #declare s11=r14; #declare s21=r24; #declare s31=r34; #declare s41=r44; #declare t12=<1,5.5,4*sz>; #declare t13=<1,6,4*sz>; #declare t14=<1,6.5,p23.z>; #declare t22=<2,5.5,4*sz>; #declare t23=<2,6,4*sz>; #declare t24=<2,6.5,4*sz>; #declare t32=<3,5.5,1>; #declare t33=<3,6,1>; #declare t34=<3,6.5,0>; #declare t42=<3.2,5.5,0.5>; #declare t43=<3.2,6,0.5>; #declare t44=<3.2,6.5,0>; #declare s14=(s13+t12)/2; #declare s24=(s23+t22)/2; #declare s34=(s33+t32)/2; #declare s44=(s43+t42)/2; #declare t11=s14; #declare t21=s24; #declare t31=s34; #declare t41=s44; #declare u12=<1,6.5,4*sz>; #declare u13=<1,7.5,4*sz>; #declare u14=<1,8.5,p23.z>; #declare u22=<2,6.5,4*sz>; #declare u23=<2,7.5,4*sz>; #declare u24=<2,8.5,4*sz>; #declare u32=<3,6.5,1>; #declare u33=<3,7.5,1>; #declare u34=<3,8.5,0>; #declare u42=<3.2,6.5,-0.26>; #declare u43=<3.2,7.5,0>; #declare u44=<3.2,8.5,0>; #declare t14=(t13+u12)/2; #declare t24=(t23+u22)/2; #declare t34=(t33+u32)/2; #declare t44=(t43+u42)/2; #declare u11=t14; #declare u21=t24; #declare u31=t34; #declare u41=t44; #macro metade_carro() union { object{ retalho(p11,p12,p13,p14,p21,p22,p23,p24,p31,p32,p33,p34,p41,p42,p43,p44, tx_vidro, tx_textura) } object{ retalho(q11,q12,q13,q14,q21,q22,q23,q24,q31,q32,q33,q34,q41,q42,q43,q44, tx_vidro, tx_textura) } object{ retalho(r11,r12,r13,r14,r21,r22,r23,r24,r31,r32,r33,r34,r41,r42,r43,r44, tx_vidro, tx_textura) } object{ retalho(s11,s12,s13,s14,s21,s22,s23,s24,s31,s32,s33,s34,s41,s42,s43,s44, tx_vidro, tx_textura) } object{ retalho(t11,t12,t13,t14,t21,t22,t23,t24,t31,t32,t33,t34,t41,t42,t43,t44, tx_vidro, tx_textura) } object{ retalho(u11,u12,u13,u14,u21,u22,u23,u24,u31,u32,u33,u34,u41,u42,u43,u44, tx_vidro, tx_textura) } } #end union { object{ metade_carro() } object{ metade_carro() scale <-1,1,1> translate <2,0,0> } rotate 80*z } // Original camera parameters: // #local cam_ctr = <0.00,3.00,0.00> // #local cam_loc = <14.00,10.00,3.50> // #local cam_vec = (<14.00,10.00,3.50>-<0.00,3.00,0.00>) // #local cam_sky = z #include "camlight.inc" camlight(<0.00,3.00,0.00>,8.821,<10,10,4>,16.039,z,1.2)