// Last edited on 2013-11-04 03:53:48 by stolfilocal // Processed by remove-cam-lights background{ color rgb < 1, 1, 1 > } #declare tx_fosca = 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_green = texture{ pigment{ color rgb < 0.00, 1.00, 0.00 > } } #declare tx_gray = texture{ pigment{ color rgb < 1.00, 1.00, 1.00 > } } #declare tx_red = texture{ pigment{ color rgb < 1.00, 0.00, 0.00 > } } #declare tx_blue = texture{ pigment{ color rgb < 0.00, 0.00, 1.00 > } } #declare tx_yellow = texture{ pigment{ color rgb < 1.00, 1.00, 0.00 > } } #declare raio = 1.000; #declare panel = box { <0,-5,-2> <-0.5,5,2> texture{ tx_gray } } #declare button_on = box { <0,4.25,1.5> <0,4.5,1.75> texture{ tx_green } } #declare button_off = box { <0,4.25,1.5> <0.25,4.5,1.75> texture{ tx_red } } #macro many_buttons(k,n) union { #declare j=0; #while (j} #else object{ button_off translate <0,-0.5*i,0>} #end #declare i= i+1; #end translate <0,0,-0.5*j> } #declare j= j+1; #end } #end #declare button_ball = cylinder{ <0,-4.5,1.75> <0.25,-4.5,1.75> 0.15 } #macro many_balls(k,n) union { #declare j=0; #while (j} #else object{ button_ball texture{ tx_yellow } translate <0,0.5*i,0>} #end #declare i= i+1; #end translate <0,0,-0.5*j> } #declare j= j+1; #end } #end #declare measurer_1 = cylinder{ <0,0,0> <0.25,0,0> 0.5 texture{ tx_fosca } } #declare measurer_2 = box{ <0.35,-0.15,0> <0.35,0,-0.5> } #declare measurer = union{ object{measurer_1} object{measurer_2} } #macro many_measures_left(k,n) union { #declare j=0; #while (j} #else object{ measurer rotate <45*i,0,0> translate <0,-4.25+i,-1>} #end #declare i= i+1; #end translate <0,0,-0.5*j> } #declare j= j+1; #end } #end #macro many_measures_right(k,n) union { #declare j=0; #while (j} #else object{ measurer rotate <45*i,0,0> translate <0,4.25-i,-1>} #end #declare i= i+1; #end translate <0,0,-0.5*j> } #declare j= j+1; #end } #end #declare lever_1 = box{ <0,-0.5,-0.65> <0,0.5,0.65> } #declare lever_2 = cylinder{ <0,0,0> <1,0,0> 0.15 texture{ tx_fosca } } #declare lever = union { object{ lever_1 } object{ lever_2 } } #macro many_levers(k,n) union { #declare j=0; #while (j} #else object{ lever translate <0,0,-1>} #end #declare i= i+1; #end translate <0,0,-0.5*j> } #declare j= j+1; #end } #end #include "eixos.inc" //object{ eixos(3.00) } object{ panel } many_buttons(5,9) many_balls(10,9) many_measures_left(1,5) many_measures_right(5,4) many_levers(1,2) #include "camlight.inc" #declare centro_cena = < 0.00, 0.00, 0.00 >; #declare raio_cena = 6.0; #declare dir_camera = < 100.01, 100.01, 00.01 >; #declare dist_camera = 30.0; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)