// Last edited on 2009-11-24 21:46:47 by stolfilocal // Processed by remove-cam-lights #include "retalho.inc" #declare grid_rd = 0.03; #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_branco = texture{ pigment{ color rgb 1 } finish{ diffuse 0.1 reflection 0.2 ambient 0.6 specular 0.1 roughness 0.005 } } #declare tx_plastico_preto = texture{ pigment{ color rgb 0 } finish{ diffuse 0.1 reflection 0.2 ambient 0.6 specular 0.1 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_grade = texture{ pigment{ color rgb < 1.00, 0.80, 0.30 > } 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_vidro = texture{ pigment{ color rgb < 1, 1, 1 > filter 0.90 } finish{ diffuse 0.03 reflection 0.25 ambient 0.02 specular 0.25 roughness 0.005 } } #declare tx_vidro_preto = texture{ pigment{ color rgb <0.5, 0.5, 0.5 > filter 0.80 } finish{ diffuse 0.03 reflection 0.25 ambient 0.02 specular 0.25 roughness 0.005 } } background{ color rgb < 0.75, 0.80, 0.85 > } #macro pe( p0_11, p0_12, p0_13, p0_14, p0_21, p0_22, p0_23, p0_24, p0_31, p0_32, p0_33, p0_34, p1_21, p1_22, p1_23, p1_24, p1_31, p1_32, p1_33, p1_34, p2_21, p2_22, p2_23, p2_24, p2_31, p2_32, p2_33, p2_34, p3_21, p3_22, p3_23, p3_24, p3_31, p3_32, p3_33, p3_34, p4_21, p4_22, p4_23, p4_24, p4_31, p4_32, p4_33, p4_34, p4_41, p4_42, p4_43, p4_44) #local p0_41 = (p0_31+p1_21)/2; #local p0_42 = (p0_32+p1_22)/2; #local p0_43 = (p0_33+p1_23)/2; #local p0_44 = (p0_34+p1_24)/2; #local p1_41 = (p1_31+p2_21)/2; #local p1_42 = (p1_32+p2_22)/2; #local p1_43 = (p1_33+p2_23)/2; #local p1_44 = (p1_34+p2_24)/2; #local p2_41 = (p2_31+6*p3_21)/7; #local p2_42 = (p2_32+6*p3_22)/7; #local p2_43 = (p2_33+6*p3_23)/7; #local p2_44 = (p2_34+6*p3_24)/7; #local p3_41 = (p3_31+p4_21)/2; #local p3_42 = (p3_32+p4_22)/2; #local p3_43 = (p3_33+p4_23)/2; #local p3_44 = (p3_34+p4_24)/2; #local p1_11 = p0_41; #local p1_12 = p0_42; #local p1_13 = p0_43; #local p1_14 = p0_44; #local p2_11 = p1_41; #local p2_12 = p1_42; #local p2_13 = p1_43; #local p2_14 = p1_44; #local p3_11 = p2_41; #local p3_12 = p2_42; #local p3_13 = p2_43; #local p3_14 = p2_44; #local p4_11 = p3_41; #local p4_12 = p3_42; #local p4_13 = p3_43; #local p4_14 = p3_44; union { retalho(p0_11, p0_12, p0_13, p0_14, p0_21, p0_22, p0_23, p0_24, p0_31, p0_32, p0_33, p0_34, p0_41, p0_42, p0_43, p0_44, tx_grade,tx_plastico_branco ) retalho(p1_11, p1_12, p1_13, p1_14, p1_21, p1_22, p1_23, p1_24, p1_31, p1_32, p1_33, p1_34, p1_41, p1_42, p1_43, p1_44, tx_grade,tx_plastico_branco ) difference { retalho(p2_11, p2_12, p2_13, p2_14, p2_21, p2_22, p2_23, p2_24, p2_31, p2_32, p2_33, p2_34, p2_41, p2_42, p2_43, p2_44, tx_grade,tx_plastico_branco ) box{<8.8, 0, 4.8>,<9.2, 2.4, 2.7> texture{tx_vidro}} } intersection { retalho(p2_11, p2_12, p2_13, p2_14, p2_21, p2_22, p2_23, p2_24, p2_31, p2_32, p2_33, p2_34, p2_41, p2_42, p2_43, p2_44, tx_grade,tx_vidro_preto ) box{<8.8, 0, 4.8>,<9.2, 2.4, 2.7> texture{tx_vidro}} } retalho(p3_11, p3_12, p3_13, p3_14, p3_21, p3_22, p3_23, p3_24, p3_31, p3_32, p3_33, p3_34, p3_41, p3_42, p3_43, p3_44, tx_grade,tx_plastico_branco ) retalho(p4_11, p4_12, p4_13, p4_14, p4_21, p4_22, p4_23, p4_24, p4_31, p4_32, p4_33, p4_34, p4_41, p4_42, p4_43, p4_44, tx_grade,tx_plastico_branco ) } #end #macro carro( p0_11, p0_12, p0_13, p0_14, p0_21, p0_22, p0_23, p0_24, p0_31, p0_32, p0_33, p0_34, p1_21, p1_22, p1_23, p1_24, p1_31, p1_32, p1_33, p1_34, p2_21, p2_22, p2_23, p2_24, p2_31, p2_32, p2_33, p2_34, p3_21, p3_22, p3_23, p3_24, p3_31, p3_32, p3_33, p3_34, p4_21, p4_22, p4_23, p4_24, p4_31, p4_32, p4_33, p4_34, p4_41, p4_42, p4_43, p4_44, obj_cutter ) difference { union { object {pe( p0_11, p0_12, p0_13, p0_14, p0_21, p0_22, p0_23, p0_24, p0_31, p0_32, p0_33, p0_34, p1_21, p1_22, p1_23, p1_24, p1_31, p1_32, p1_33, p1_34, p2_21, p2_22, p2_23, p2_24, p2_31, p2_32, p2_33, p2_34, p3_21, p3_22, p3_23, p3_24, p3_31, p3_32, p3_33, p3_34, p4_21, p4_22, p4_23, p4_24, p4_31, p4_32, p4_33, p4_34, p4_41, p4_42, p4_43, p4_44) } object {pe( p0_11, p0_12, p0_13, p0_14, p0_21, p0_22, p0_23, p0_24, p0_31, p0_32, p0_33, p0_34, p1_21, p1_22, p1_23, p1_24, p1_31, p1_32, p1_33, p1_34, p2_21, p2_22, p2_23, p2_24, p2_31, p2_32, p2_33, p2_34, p3_21, p3_22, p3_23, p3_24, p3_31, p3_32, p3_33, p3_34, p4_21, p4_22, p4_23, p4_24, p4_31, p4_32, p4_33, p4_34, p4_41, p4_42, p4_43, p4_44) scale <1, -1, 1> } } object{obj_cutter} } #end #declare q0p0_11 = <1.98,0,0>; #declare q0p0_12 = <1.98,2.9,0>; #declare q0p0_13 = <1.98,3,0>; #declare q0p0_14 = <1.98,3.1,0>; #declare q0p0_21 = <2,0,0>; #declare q0p0_22 = <2,2.9,0>; #declare q0p0_23 = <2,3,0>; #declare q0p0_24 = <2,3.1,0>; #declare q0p0_31 = <3,0,0>; #declare q0p0_32 = <3,2.9,0>; #declare q0p0_33 = <3,3,0>; #declare q0p0_34 = <3,3.1,0>; #declare q0p1_21 = <4.1,0,0>; #declare q0p1_22 = <4.1,2.9,0>; #declare q0p1_23 = <4.1,3,0>; #declare q0p1_24 = <4.1,3.1,0>; #declare q0p1_31 = <6,0,0>; #declare q0p1_32 = <6,2.9,0>; #declare q0p1_33 = <6,3,0>; #declare q0p1_34 = <6,3.1,0>; #declare q0p2_21 = <8,0,0>; #declare q0p2_22 = <8,2.9,0>; #declare q0p2_23 = <8,3,0>; #declare q0p2_24 = <8,3.1,0>; #declare q0p2_31 = <9,0,0>; #declare q0p2_32 = <9,2.9,0>; #declare q0p2_33 = <9,3,0>; #declare q0p2_34 = <9,3.1,0>; #declare q0p3_21 = <9,0,0>; #declare q0p3_22 = <9,2.9,0>; #declare q0p3_23 = <9,3,0>; #declare q0p3_24 = <9,3.1,0>; #declare q0p3_31 = <9,0,0>; #declare q0p3_32 = <9,2.9,0>; #declare q0p3_33 = <9,3,0>; #declare q0p3_34 = <9,3.1,0>; #declare q0p4_21 = <9,0,0>; #declare q0p4_22 = <9,2.9,0>; #declare q0p4_23 = <9,3,0>; #declare q0p4_24 = <9,3.1,0>; #declare q0p4_31 = <9,0,0>; #declare q0p4_32 = <9,2.9,0>; #declare q0p4_33 = <9,3,0>; #declare q0p4_34 = <9,3.1,0>; #declare q0p4_41 = <9,0,0>; #declare q0p4_42 = <9,2.9,0>; #declare q0p4_43 = <9,3,0>; #declare q0p4_44 = <9,3.1,0>; #declare q1p0_11 = <1.98,0,0>; #declare q1p0_12 = <1.98,2.9,0>; #declare q1p0_13 = <1.98,3,0>; #declare q1p0_14 = <1.98,3.1,0>; #declare q1p0_21 = <2,0,4>; #declare q1p0_22 = <2,2.9,4>; #declare q1p0_23 = <2,3,4>; #declare q1p0_24 = <2,3.1,0>; #declare q1p0_31 = <3,0,4>; #declare q1p0_32 = <3,2.9,4>; #declare q1p0_33 = <3,3,4>; #declare q1p0_34 = <3,3.1,0>; #declare q1p1_21 = <4.1,0,4>; #declare q1p1_22 = <4.1,2.9,4>; #declare q1p1_23 = <4.1,3,4>; #declare q1p1_24 = <4.1,3.1,0>; #declare q1p1_31 = <6,0,4>; #declare q1p1_32 = <6,2.9,4>; #declare q1p1_33 = <6,3,4>; #declare q1p1_34 = <6,3.1,0>; #declare q1p2_21 = <8,0,4>; #declare q1p2_22 = <8,2.9,4>; #declare q1p2_23 = <8,3,4>; #declare q1p2_24 = <8,3.1,0>; #declare q1p2_31 = <9,0,4>; #declare q1p2_32 = <9,2.9,4>; #declare q1p2_33 = <9,3,4>; #declare q1p2_34 = <9,3.1,0>; #declare q1p3_21 = <9,0,2.5>; #declare q1p3_22 = <9,2.9,2.5>; #declare q1p3_23 = <9,3,2.5>; #declare q1p3_24 = <9,3.1,0>; #declare q1p3_31 = <9,0,2.5>; #declare q1p3_32 = <9,2.9,2.5>; #declare q1p3_33 = <9,3,2.5>; #declare q1p3_34 = <9,3.1,0>; #declare q1p4_21 = <9,0,0>; #declare q1p4_22 = <9,2.9,0>; #declare q1p4_23 = <9,3,0>; #declare q1p4_24 = <9,3.1,0>; #declare q1p4_31 = <9,0,0>; #declare q1p4_32 = <9,2.9,0>; #declare q1p4_33 = <9,3,0>; #declare q1p4_34 = <9,3.1,0>; #declare q1p4_41 = <9.01,0,0>; #declare q1p4_42 = <9.01,2.9,0>; #declare q1p4_43 = <9.01,3,0>; #declare q1p4_44 = <9.01,3.1,0>; #declare q2p0_11 = <1.98,0,0>; #declare q2p0_12 = <1.98,2.9,0>; #declare q2p0_13 = <1.98,3,0>; #declare q2p0_14 = <1.98,3.1,0>; #declare q2p0_21 = <2,0,3>; #declare q2p0_22 = <2,2.9,3>; #declare q2p0_23 = <2,3,3>; #declare q2p0_24 = <2,3.1,0>; #declare q2p0_31 = <3,0,3>; #declare q2p0_32 = <3,2.9,3>; #declare q2p0_33 = <3,3,3>; #declare q2p0_34 = <3,3.1,0>; #declare q2p1_21 = <4.1,0,3.5>; #declare q2p1_22 = <4.1,2.9,3.5>; #declare q2p1_23 = <4.1,3,3.5>; #declare q2p1_24 = <4.1,3.1,0>; #declare q2p1_31 = <6,0,3.9>; #declare q2p1_32 = <6,2.9,3.9>; #declare q2p1_33 = <6,3,3.5>; #declare q2p1_34 = <6,3.1,0>; #declare q2p2_21 = <8,0,3.9>; #declare q2p2_22 = <8,2.9,3.9>; #declare q2p2_23 = <8,3,3.9>; #declare q2p2_24 = <8,3.1,0>; #declare q2p2_31 = <9,0,3.9>; #declare q2p2_32 = <9,2.9,3.9>; #declare q2p2_33 = <9,3,3.9>; #declare q2p2_34 = <9,3.1,0>; #declare q2p3_21 = <9,0,2.5>; #declare q2p3_22 = <9,2.9,2.5>; #declare q2p3_23 = <9,3,2.5>; #declare q2p3_24 = <9,3.1,0>; #declare q2p3_31 = <9,0,2.5>; #declare q2p3_32 = <9,2.9,2.5>; #declare q2p3_33 = <9,3,2.5>; #declare q2p3_34 = <9,3.1,0>; #declare q2p4_21 = <9,0,2.5>; #declare q2p4_22 = <9,2.9,2.5>; #declare q2p4_23 = <9,3,2.5>; #declare q2p4_24 = <9,3.1,0>; #declare q2p4_31 = <9,0,2.5>; #declare q2p4_32 = <9,2.9,2.5>; #declare q2p4_33 = <9,3,2.5>; #declare q2p4_34 = <9,3.1,0>; #declare q2p4_41 = <9.01,0,0>; #declare q2p4_42 = <9.01,2.9,0>; #declare q2p4_43 = <9.01,3,0>; #declare q2p4_44 = <9.01,3.1,0>; #declare q3p0_11 = <1.98,0,0>; #declare q3p0_12 = <1.98,2.9,0>; #declare q3p0_13 = <1.98,3,0>; #declare q3p0_14 = <1.98,3.1,0>; #declare q3p0_21 = <2,0,3>; #declare q3p0_22 = <2,2.9,3>; #declare q3p0_23 = <2,3,3>; #declare q3p0_24 = <2,3.1,0>; #declare q3p0_31 = <3,0,3>; #declare q3p0_32 = <3,2.9,3>; #declare q3p0_33 = <3,3,3>; #declare q3p0_34 = <3,3.1,0>; #declare q3p1_21 = <4.1,0,3.5>; #declare q3p1_22 = <4.1,2.9,3.5>; #declare q3p1_23 = <4.1,3,3.5>; #declare q3p1_24 = <4.1,3.1,0>; #declare q3p1_31 = <6,0,3.9>; #declare q3p1_32 = <6,2.9,3.9>; #declare q3p1_33 = <6,3,3.5>; #declare q3p1_34 = <6,3.1,0>; #declare q3p2_21 = <8,0,3.9>; #declare q3p2_22 = <8,2.9,3.9>; #declare q3p2_23 = <8,3,3.9>; #declare q3p2_24 = <8,3.1,0>; #declare q3p2_31 = <9,0,3.9>; #declare q3p2_32 = <9,2.9,3.9>; #declare q3p2_33 = <9,3,3.9>; #declare q3p2_34 = <9,3.1,0>; #declare q3p3_21 = <9.2,0,2.5>; #declare q3p3_22 = <9.2,2.9,2.5>; #declare q3p3_23 = <9.2,3,2.5>; #declare q3p3_24 = <9.2,3.1,0>; #declare q3p3_31 = <12,0,2.5>; #declare q3p3_32 = <12,2.9,2.5>; #declare q3p3_33 = <12,3,2.5>; #declare q3p3_34 = <12,3.1,0>; #declare q3p4_21 = <13,0,2.5>; #declare q3p4_22 = <13,2.9,2.5>; #declare q3p4_23 = <13,3,2.5>; #declare q3p4_24 = <13,3.1,0>; #declare q3p4_31 = <14,0,2.5>; #declare q3p4_32 = <14,2.9,2.5>; #declare q3p4_33 = <14,3,2.5>; #declare q3p4_34 = <14,3.1,0>; #declare q3p4_41 = <14.01,0,0>; #declare q3p4_42 = <14.01,2.9,0>; #declare q3p4_43 = <14.01,3,0>; #declare q3p4_44 = <14.01,3.1,0>; #declare q4p0_11 = <1.98,0,0>; #declare q4p0_12 = <1.98,2.9,0>; #declare q4p0_13 = <1.98,3,0>; #declare q4p0_14 = <1.98,3.1,0>; #declare q4p0_21 = <2,0,3>; #declare q4p0_22 = <2,2.9,3>; #declare q4p0_23 = <2,3,3>; #declare q4p0_24 = <2,3.1,0>; #declare q4p0_31 = <3,0,3>; #declare q4p0_32 = <3,2.9,3>; #declare q4p0_33 = <3,3,3>; #declare q4p0_34 = <3,3.1,0>; #declare q4p1_21 = <4.1,0,3.5>; #declare q4p1_22 = <4.1,2.9,3.5>; #declare q4p1_23 = <4.1,3,3.5>; #declare q4p1_24 = <4.1,3.1,0>; #declare q4p1_31 = <6,0,3.9>; #declare q4p1_32 = <6,2.9,3.9>; #declare q4p1_33 = <6,3,3.5>; #declare q4p1_34 = <6,3.1,0>; #declare q4p2_21 = <8,0,3.9>; #declare q4p2_22 = <8,2.9,3.9>; #declare q4p2_23 = <8,3,3.9>; #declare q4p2_24 = <8,3.1,0>; #declare q4p2_31 = <9,0,3.9>; #declare q4p2_32 = <9,2.9,3.9>; #declare q4p2_33 = <9,3,3.9>; #declare q4p2_34 = <9,3.1,0>; #declare q4p3_21 = <9.2,0,2.5>; #declare q4p3_22 = <9.2,2.9,2.5>; #declare q4p3_23 = <9.2,3,2.5>; #declare q4p3_24 = <9.2,3.1,0>; #declare q4p3_31 = <12,0,2.5>; #declare q4p3_32 = <12,2.9,2.5>; #declare q4p3_33 = <12,3,2.5>; #declare q4p3_34 = <12,3.1,0>; #declare q4p4_21 = <13,0,2.5>; #declare q4p4_22 = <13,2.9,2.5>; #declare q4p4_23 = <13,3,2.5>; #declare q4p4_24 = <13,3.1,0>; #declare q4p4_31 = <14,0,2.5>; #declare q4p4_32 = <14,2.9,2.5>; #declare q4p4_33 = <14,3,2.5>; #declare q4p4_34 = <14,3.1,0>; #declare q4p4_41 = <14.01,0,0>; #declare q4p4_42 = <14.01,2.9,0>; #declare q4p4_43 = <14.01,3,0>; #declare q4p4_44 = <14.01,3.1,0>; #declare cutter1 = box{<-1,-6,-3>,<16, 16, -1>} #macro cutter2(tx) union { cylinder {<4,-8,tx*1>,<4,8,tx*1>, tx*0.8} cylinder {<12,-8,tx*1>,<12,8,tx*1>, tx*0.8} box{<-1,-6,-3>,<16, 16, tx-0.00001>} } #end #declare ck0=0.0; #declare ck1=0.2; #declare ck2=0.4; #declare ck3=0.6; #declare ck4=0.8; #declare ck5=1; #macro cena(ck) #if ((ck >= ck0) & (ck < ck1)) #local tt=(ck-ck0)/(ck1-ck0); #local p0_11 = (1-tt)*q0p0_11 + (tt)*q1p0_11; #local p0_12 = (1-tt)*q0p0_12 + (tt)*q1p0_12; #local p0_13 = (1-tt)*q0p0_13 + (tt)*q1p0_13; #local p0_14 = (1-tt)*q0p0_14 + (tt)*q1p0_14; #local p0_21 = (1-tt)*q0p0_21 + (tt)*q1p0_21; #local p0_22 = (1-tt)*q0p0_22 + (tt)*q1p0_22; #local p0_23 = (1-tt)*q0p0_23 + (tt)*q1p0_23; #local p0_24 = (1-tt)*q0p0_24 + (tt)*q1p0_24; #local p0_31 = (1-tt)*q0p0_31 + (tt)*q1p0_31; #local p0_32 = (1-tt)*q0p0_32 + (tt)*q1p0_32; #local p0_33 = (1-tt)*q0p0_33 + (tt)*q1p0_33; #local p0_34 = (1-tt)*q0p0_34 + (tt)*q1p0_34; #local p1_21 = (1-tt)*q0p1_21 + (tt)*q1p1_21; #local p1_22 = (1-tt)*q0p1_22 + (tt)*q1p1_22; #local p1_23 = (1-tt)*q0p1_23 + (tt)*q1p1_23; #local p1_24 = (1-tt)*q0p1_24 + (tt)*q1p1_24; #local p1_31 = (1-tt)*q0p1_31 + (tt)*q1p1_31; #local p1_32 = (1-tt)*q0p1_32 + (tt)*q1p1_32; #local p1_33 = (1-tt)*q0p1_33 + (tt)*q1p1_33; #local p1_34 = (1-tt)*q0p1_34 + (tt)*q1p1_34; #local p2_21 = (1-tt)*q0p2_21 + (tt)*q1p2_21; #local p2_22 = (1-tt)*q0p2_22 + (tt)*q1p2_22; #local p2_23 = (1-tt)*q0p2_23 + (tt)*q1p2_23; #local p2_24 = (1-tt)*q0p2_24 + (tt)*q1p2_24; #local p2_31 = (1-tt)*q0p2_31 + (tt)*q1p2_31; #local p2_32 = (1-tt)*q0p2_32 + (tt)*q1p2_32; #local p2_33 = (1-tt)*q0p2_33 + (tt)*q1p2_33; #local p2_34 = (1-tt)*q0p2_34 + (tt)*q1p2_34; #local p3_21 = (1-tt)*q0p3_21 + (tt)*q1p3_21; #local p3_22 = (1-tt)*q0p3_22 + (tt)*q1p3_22; #local p3_23 = (1-tt)*q0p3_23 + (tt)*q1p3_23; #local p3_24 = (1-tt)*q0p3_24 + (tt)*q1p3_24; #local p3_31 = (1-tt)*q0p3_31 + (tt)*q1p3_31; #local p3_32 = (1-tt)*q0p3_32 + (tt)*q1p3_32; #local p3_33 = (1-tt)*q0p3_33 + (tt)*q1p3_33; #local p3_34 = (1-tt)*q0p3_34 + (tt)*q1p3_34; #local p4_21 = (1-tt)*q0p4_21 + (tt)*q1p4_21; #local p4_22 = (1-tt)*q0p4_22 + (tt)*q1p4_22; #local p4_23 = (1-tt)*q0p4_23 + (tt)*q1p4_23; #local p4_24 = (1-tt)*q0p4_24 + (tt)*q1p4_24; #local p4_31 = (1-tt)*q0p4_31 + (tt)*q1p4_31; #local p4_32 = (1-tt)*q0p4_32 + (tt)*q1p4_32; #local p4_33 = (1-tt)*q0p4_33 + (tt)*q1p4_33; #local p4_34 = (1-tt)*q0p4_34 + (tt)*q1p4_34; #local p4_41 = (1-tt)*q0p4_41 + (tt)*q1p4_41; #local p4_42 = (1-tt)*q0p4_42 + (tt)*q1p4_42; #local p4_43 = (1-tt)*q0p4_43 + (tt)*q1p4_43; #local p4_44 = (1-tt)*q0p4_44 + (tt)*q1p4_44; #local cutter = cutter1; #end #if ((ck >= ck1) & (ck < ck2)) #local tt=(ck-ck1)/(ck2-ck1); #local p0_11 = (1-tt)*q1p0_11 + (tt)*q2p0_11; #local p0_12 = (1-tt)*q1p0_12 + (tt)*q2p0_12; #local p0_13 = (1-tt)*q1p0_13 + (tt)*q2p0_13; #local p0_14 = (1-tt)*q1p0_14 + (tt)*q2p0_14; #local p0_21 = (1-tt)*q1p0_21 + (tt)*q2p0_21; #local p0_22 = (1-tt)*q1p0_22 + (tt)*q2p0_22; #local p0_23 = (1-tt)*q1p0_23 + (tt)*q2p0_23; #local p0_24 = (1-tt)*q1p0_24 + (tt)*q2p0_24; #local p0_31 = (1-tt)*q1p0_31 + (tt)*q2p0_31; #local p0_32 = (1-tt)*q1p0_32 + (tt)*q2p0_32; #local p0_33 = (1-tt)*q1p0_33 + (tt)*q2p0_33; #local p0_34 = (1-tt)*q1p0_34 + (tt)*q2p0_34; #local p1_21 = (1-tt)*q1p1_21 + (tt)*q2p1_21; #local p1_22 = (1-tt)*q1p1_22 + (tt)*q2p1_22; #local p1_23 = (1-tt)*q1p1_23 + (tt)*q2p1_23; #local p1_24 = (1-tt)*q1p1_24 + (tt)*q2p1_24; #local p1_31 = (1-tt)*q1p1_31 + (tt)*q2p1_31; #local p1_32 = (1-tt)*q1p1_32 + (tt)*q2p1_32; #local p1_33 = (1-tt)*q1p1_33 + (tt)*q2p1_33; #local p1_34 = (1-tt)*q1p1_34 + (tt)*q2p1_34; #local p2_21 = (1-tt)*q1p2_21 + (tt)*q2p2_21; #local p2_22 = (1-tt)*q1p2_22 + (tt)*q2p2_22; #local p2_23 = (1-tt)*q1p2_23 + (tt)*q2p2_23; #local p2_24 = (1-tt)*q1p2_24 + (tt)*q2p2_24; #local p2_31 = (1-tt)*q1p2_31 + (tt)*q2p2_31; #local p2_32 = (1-tt)*q1p2_32 + (tt)*q2p2_32; #local p2_33 = (1-tt)*q1p2_33 + (tt)*q2p2_33; #local p2_34 = (1-tt)*q1p2_34 + (tt)*q2p2_34; #local p3_21 = (1-tt)*q1p3_21 + (tt)*q2p3_21; #local p3_22 = (1-tt)*q1p3_22 + (tt)*q2p3_22; #local p3_23 = (1-tt)*q1p3_23 + (tt)*q2p3_23; #local p3_24 = (1-tt)*q1p3_24 + (tt)*q2p3_24; #local p3_31 = (1-tt)*q1p3_31 + (tt)*q2p3_31; #local p3_32 = (1-tt)*q1p3_32 + (tt)*q2p3_32; #local p3_33 = (1-tt)*q1p3_33 + (tt)*q2p3_33; #local p3_34 = (1-tt)*q1p3_34 + (tt)*q2p3_34; #local p4_21 = (1-tt)*q1p4_21 + (tt)*q2p4_21; #local p4_22 = (1-tt)*q1p4_22 + (tt)*q2p4_22; #local p4_23 = (1-tt)*q1p4_23 + (tt)*q2p4_23; #local p4_24 = (1-tt)*q1p4_24 + (tt)*q2p4_24; #local p4_31 = (1-tt)*q1p4_31 + (tt)*q2p4_31; #local p4_32 = (1-tt)*q1p4_32 + (tt)*q2p4_32; #local p4_33 = (1-tt)*q1p4_33 + (tt)*q2p4_33; #local p4_34 = (1-tt)*q1p4_34 + (tt)*q2p4_34; #local p4_41 = (1-tt)*q1p4_41 + (tt)*q2p4_41; #local p4_42 = (1-tt)*q1p4_42 + (tt)*q2p4_42; #local p4_43 = (1-tt)*q1p4_43 + (tt)*q2p4_43; #local p4_44 = (1-tt)*q1p4_44 + (tt)*q2p4_44; #local cutter = cutter1; #end #if ((ck >= ck2) & (ck < ck3)) #local tt=(ck-ck2)/(ck3-ck2); #local p0_11 = (1-tt)*q2p0_11 + (tt)*q3p0_11; #local p0_12 = (1-tt)*q2p0_12 + (tt)*q3p0_12; #local p0_13 = (1-tt)*q2p0_13 + (tt)*q3p0_13; #local p0_14 = (1-tt)*q2p0_14 + (tt)*q3p0_14; #local p0_21 = (1-tt)*q2p0_21 + (tt)*q3p0_21; #local p0_22 = (1-tt)*q2p0_22 + (tt)*q3p0_22; #local p0_23 = (1-tt)*q2p0_23 + (tt)*q3p0_23; #local p0_24 = (1-tt)*q2p0_24 + (tt)*q3p0_24; #local p0_31 = (1-tt)*q2p0_31 + (tt)*q3p0_31; #local p0_32 = (1-tt)*q2p0_32 + (tt)*q3p0_32; #local p0_33 = (1-tt)*q2p0_33 + (tt)*q3p0_33; #local p0_34 = (1-tt)*q2p0_34 + (tt)*q3p0_34; #local p1_21 = (1-tt)*q2p1_21 + (tt)*q3p1_21; #local p1_22 = (1-tt)*q2p1_22 + (tt)*q3p1_22; #local p1_23 = (1-tt)*q2p1_23 + (tt)*q3p1_23; #local p1_24 = (1-tt)*q2p1_24 + (tt)*q3p1_24; #local p1_31 = (1-tt)*q2p1_31 + (tt)*q3p1_31; #local p1_32 = (1-tt)*q2p1_32 + (tt)*q3p1_32; #local p1_33 = (1-tt)*q2p1_33 + (tt)*q3p1_33; #local p1_34 = (1-tt)*q2p1_34 + (tt)*q3p1_34; #local p2_21 = (1-tt)*q2p2_21 + (tt)*q3p2_21; #local p2_22 = (1-tt)*q2p2_22 + (tt)*q3p2_22; #local p2_23 = (1-tt)*q2p2_23 + (tt)*q3p2_23; #local p2_24 = (1-tt)*q2p2_24 + (tt)*q3p2_24; #local p2_31 = (1-tt)*q2p2_31 + (tt)*q3p2_31; #local p2_32 = (1-tt)*q2p2_32 + (tt)*q3p2_32; #local p2_33 = (1-tt)*q2p2_33 + (tt)*q3p2_33; #local p2_34 = (1-tt)*q2p2_34 + (tt)*q3p2_34; #local p3_21 = (1-tt)*q2p3_21 + (tt)*q3p3_21; #local p3_22 = (1-tt)*q2p3_22 + (tt)*q3p3_22; #local p3_23 = (1-tt)*q2p3_23 + (tt)*q3p3_23; #local p3_24 = (1-tt)*q2p3_24 + (tt)*q3p3_24; #local p3_31 = (1-tt)*q2p3_31 + (tt)*q3p3_31; #local p3_32 = (1-tt)*q2p3_32 + (tt)*q3p3_32; #local p3_33 = (1-tt)*q2p3_33 + (tt)*q3p3_33; #local p3_34 = (1-tt)*q2p3_34 + (tt)*q3p3_34; #local p4_21 = (1-tt)*q2p4_21 + (tt)*q3p4_21; #local p4_22 = (1-tt)*q2p4_22 + (tt)*q3p4_22; #local p4_23 = (1-tt)*q2p4_23 + (tt)*q3p4_23; #local p4_24 = (1-tt)*q2p4_24 + (tt)*q3p4_24; #local p4_31 = (1-tt)*q2p4_31 + (tt)*q3p4_31; #local p4_32 = (1-tt)*q2p4_32 + (tt)*q3p4_32; #local p4_33 = (1-tt)*q2p4_33 + (tt)*q3p4_33; #local p4_34 = (1-tt)*q2p4_34 + (tt)*q3p4_34; #local p4_41 = (1-tt)*q2p4_41 + (tt)*q3p4_41; #local p4_42 = (1-tt)*q2p4_42 + (tt)*q3p4_42; #local p4_43 = (1-tt)*q2p4_43 + (tt)*q3p4_43; #local p4_44 = (1-tt)*q2p4_44 + (tt)*q3p4_44; #local cutter = cutter1; #end #if ((ck >= ck3) & (ck < ck4)) #local tt=(ck-ck3)/(ck4-ck3); #local p0_11 = (1-tt)*q3p0_11 + (tt)*q4p0_11; #local p0_12 = (1-tt)*q3p0_12 + (tt)*q4p0_12; #local p0_13 = (1-tt)*q3p0_13 + (tt)*q4p0_13; #local p0_14 = (1-tt)*q3p0_14 + (tt)*q4p0_14; #local p0_21 = (1-tt)*q3p0_21 + (tt)*q4p0_21; #local p0_22 = (1-tt)*q3p0_22 + (tt)*q4p0_22; #local p0_23 = (1-tt)*q3p0_23 + (tt)*q4p0_23; #local p0_24 = (1-tt)*q3p0_24 + (tt)*q4p0_24; #local p0_31 = (1-tt)*q3p0_31 + (tt)*q4p0_31; #local p0_32 = (1-tt)*q3p0_32 + (tt)*q4p0_32; #local p0_33 = (1-tt)*q3p0_33 + (tt)*q4p0_33; #local p0_34 = (1-tt)*q3p0_34 + (tt)*q4p0_34; #local p1_21 = (1-tt)*q3p1_21 + (tt)*q4p1_21; #local p1_22 = (1-tt)*q3p1_22 + (tt)*q4p1_22; #local p1_23 = (1-tt)*q3p1_23 + (tt)*q4p1_23; #local p1_24 = (1-tt)*q3p1_24 + (tt)*q4p1_24; #local p1_31 = (1-tt)*q3p1_31 + (tt)*q4p1_31; #local p1_32 = (1-tt)*q3p1_32 + (tt)*q4p1_32; #local p1_33 = (1-tt)*q3p1_33 + (tt)*q4p1_33; #local p1_34 = (1-tt)*q3p1_34 + (tt)*q4p1_34; #local p2_21 = (1-tt)*q3p2_21 + (tt)*q4p2_21; #local p2_22 = (1-tt)*q3p2_22 + (tt)*q4p2_22; #local p2_23 = (1-tt)*q3p2_23 + (tt)*q4p2_23; #local p2_24 = (1-tt)*q3p2_24 + (tt)*q4p2_24; #local p2_31 = (1-tt)*q3p2_31 + (tt)*q4p2_31; #local p2_32 = (1-tt)*q3p2_32 + (tt)*q4p2_32; #local p2_33 = (1-tt)*q3p2_33 + (tt)*q4p2_33; #local p2_34 = (1-tt)*q3p2_34 + (tt)*q4p2_34; #local p3_21 = (1-tt)*q3p3_21 + (tt)*q4p3_21; #local p3_22 = (1-tt)*q3p3_22 + (tt)*q4p3_22; #local p3_23 = (1-tt)*q3p3_23 + (tt)*q4p3_23; #local p3_24 = (1-tt)*q3p3_24 + (tt)*q4p3_24; #local p3_31 = (1-tt)*q3p3_31 + (tt)*q4p3_31; #local p3_32 = (1-tt)*q3p3_32 + (tt)*q4p3_32; #local p3_33 = (1-tt)*q3p3_33 + (tt)*q4p3_33; #local p3_34 = (1-tt)*q3p3_34 + (tt)*q4p3_34; #local p4_21 = (1-tt)*q3p4_21 + (tt)*q4p4_21; #local p4_22 = (1-tt)*q3p4_22 + (tt)*q4p4_22; #local p4_23 = (1-tt)*q3p4_23 + (tt)*q4p4_23; #local p4_24 = (1-tt)*q3p4_24 + (tt)*q4p4_24; #local p4_31 = (1-tt)*q3p4_31 + (tt)*q4p4_31; #local p4_32 = (1-tt)*q3p4_32 + (tt)*q4p4_32; #local p4_33 = (1-tt)*q3p4_33 + (tt)*q4p4_33; #local p4_34 = (1-tt)*q3p4_34 + (tt)*q4p4_34; #local p4_41 = (1-tt)*q3p4_41 + (tt)*q4p4_41; #local p4_42 = (1-tt)*q3p4_42 + (tt)*q4p4_42; #local p4_43 = (1-tt)*q3p4_43 + (tt)*q4p4_43; #local p4_44 = (1-tt)*q3p4_44 + (tt)*q4p4_44; #local cutter = object{cutter2(tt)} #end #if ((ck >= ck4) & (ck <= ck5)) #local tt=(ck-ck4)/(ck5-ck4); #local p0_11 = (1-tt)*q4p0_11 + (tt)*q0p0_11; #local p0_12 = (1-tt)*q4p0_12 + (tt)*q0p0_12; #local p0_13 = (1-tt)*q4p0_13 + (tt)*q0p0_13; #local p0_14 = (1-tt)*q4p0_14 + (tt)*q0p0_14; #local p0_21 = (1-tt)*q4p0_21 + (tt)*q0p0_21; #local p0_22 = (1-tt)*q4p0_22 + (tt)*q0p0_22; #local p0_23 = (1-tt)*q4p0_23 + (tt)*q0p0_23; #local p0_24 = (1-tt)*q4p0_24 + (tt)*q0p0_24; #local p0_31 = (1-tt)*q4p0_31 + (tt)*q0p0_31; #local p0_32 = (1-tt)*q4p0_32 + (tt)*q0p0_32; #local p0_33 = (1-tt)*q4p0_33 + (tt)*q0p0_33; #local p0_34 = (1-tt)*q4p0_34 + (tt)*q0p0_34; #local p1_21 = (1-tt)*q4p1_21 + (tt)*q0p1_21; #local p1_22 = (1-tt)*q4p1_22 + (tt)*q0p1_22; #local p1_23 = (1-tt)*q4p1_23 + (tt)*q0p1_23; #local p1_24 = (1-tt)*q4p1_24 + (tt)*q0p1_24; #local p1_31 = (1-tt)*q4p1_31 + (tt)*q0p1_31; #local p1_32 = (1-tt)*q4p1_32 + (tt)*q0p1_32; #local p1_33 = (1-tt)*q4p1_33 + (tt)*q0p1_33; #local p1_34 = (1-tt)*q4p1_34 + (tt)*q0p1_34; #local p2_21 = (1-tt)*q4p2_21 + (tt)*q0p2_21; #local p2_22 = (1-tt)*q4p2_22 + (tt)*q0p2_22; #local p2_23 = (1-tt)*q4p2_23 + (tt)*q0p2_23; #local p2_24 = (1-tt)*q4p2_24 + (tt)*q0p2_24; #local p2_31 = (1-tt)*q4p2_31 + (tt)*q0p2_31; #local p2_32 = (1-tt)*q4p2_32 + (tt)*q0p2_32; #local p2_33 = (1-tt)*q4p2_33 + (tt)*q0p2_33; #local p2_34 = (1-tt)*q4p2_34 + (tt)*q0p2_34; #local p3_21 = (1-tt)*q4p3_21 + (tt)*q0p3_21; #local p3_22 = (1-tt)*q4p3_22 + (tt)*q0p3_22; #local p3_23 = (1-tt)*q4p3_23 + (tt)*q0p3_23; #local p3_24 = (1-tt)*q4p3_24 + (tt)*q0p3_24; #local p3_31 = (1-tt)*q4p3_31 + (tt)*q0p3_31; #local p3_32 = (1-tt)*q4p3_32 + (tt)*q0p3_32; #local p3_33 = (1-tt)*q4p3_33 + (tt)*q0p3_33; #local p3_34 = (1-tt)*q4p3_34 + (tt)*q0p3_34; #local p4_21 = (1-tt)*q4p4_21 + (tt)*q0p4_21; #local p4_22 = (1-tt)*q4p4_22 + (tt)*q0p4_22; #local p4_23 = (1-tt)*q4p4_23 + (tt)*q0p4_23; #local p4_24 = (1-tt)*q4p4_24 + (tt)*q0p4_24; #local p4_31 = (1-tt)*q4p4_31 + (tt)*q0p4_31; #local p4_32 = (1-tt)*q4p4_32 + (tt)*q0p4_32; #local p4_33 = (1-tt)*q4p4_33 + (tt)*q0p4_33; #local p4_34 = (1-tt)*q4p4_34 + (tt)*q0p4_34; #local p4_41 = (1-tt)*q4p4_41 + (tt)*q0p4_41; #local p4_42 = (1-tt)*q4p4_42 + (tt)*q0p4_42; #local p4_43 = (1-tt)*q4p4_43 + (tt)*q0p4_43; #local p4_44 = (1-tt)*q4p4_44 + (tt)*q0p4_44; #if (tt < 0.5) #local cutter = object{cutter2(1-2*tt)} #end #if (tt >= 0.5) #local cutter = cutter1; #end #end object{ carro( p0_11, p0_12, p0_13, p0_14, p0_21, p0_22, p0_23, p0_24, p0_31, p0_32, p0_33, p0_34, p1_21, p1_22, p1_23, p1_24, p1_31, p1_32, p1_33, p1_34, p2_21, p2_22, p2_23, p2_24, p2_31, p2_32, p2_33, p2_34, p3_21, p3_22, p3_23, p3_24, p3_31, p3_32, p3_33, p3_34, p4_21, p4_22, p4_23, p4_24, p4_31, p4_32, p4_33, p4_34, p4_41, p4_42, p4_43, p4_44, cutter ) } #end // object{ eixos(5) } object{cena(clock)} // Original camera parameters: // #local cam_ctr = <9,0,0> // #local cam_loc = <12,8,7> // #local cam_vec = (<12,8,7>-<9,0,0>) // #local cam_sky = z #include "camlight.inc" camlight(<9,0,1>,9.00,<7,10,10>,20.00,z,1.2)