// CORES E TEXTURAS background{ color rgb < 0.75, 0.80, 0.85 > } #include "textures.inc" #declare raio = 2.000; #declare espessura = 0.03; // Partes da cena: #declare esfera = sphere{ < 0,0,0 >, raio texture{ Aluminum } } #declare esfera_sub = sphere{ < 0,0,0 >, raio texture{ Aluminum } } #declare cubo_sub = box{ <-0.7,-2,-5> , <5,2,5> } #declare cubo_sub2 = box{ <-5,1.3,-5> , <5,5,5> } #declare garra_sub = box{ <-5,0,-0.25>, <5,5,0.25> } #declare braco = box{ <-0.7,0,-0.6>, <(-0.7+espessura),-10,+0.6> texture{ Aluminum } } #include "eixos.inc" #macro abre (angulo, t_up) union{ union{ difference{ object{ esfera } object{ esfera_sub scale<(1-espessura),(1-espessura),(1-espessura)> } object{ cubo_sub } object{ cubo_sub2 } object{ garra_sub translate<0,0,+0.7>} object{ garra_sub translate<0,0,-0.7>} } difference{ object{ braco } object{ esfera_sub scale<(1-espessura),(1-espessura),(1-espessura)> } } scale<0,1.5,0> translate<0.65,0,0> translate<0,15,0> scale<0.3,0.3,0.3> rotate (angulo)*z } union{ difference{ object{ esfera } object{ esfera_sub scale<(1-espessura),(1-espessura),(1-espessura)> } object{ cubo_sub } object{ cubo_sub2 } object{ garra_sub translate<0,0,+0.7>} object{ garra_sub translate<0,0,-0.7>} } difference{ object{ braco } object{ esfera_sub scale<(1-espessura),(1-espessura),(1-espessura)> } } scale<0,1.5,0> translate<0.65,0,0> translate<0,15,0> scale<0.3,0.3,0.3> rotate 180*y rotate (360-angulo)*z } translate<0,0,t_up> } #end union{ // object{ eixos(6.00) } abre(0,0) abre(5,2) abre(10,4) } #include "camlight.inc" #declare centro_cena = < 0.00, 3.00, 2.00 >; #declare raio_cena = 6.0; #declare dir_camera = < 10.00, 10.00, 5.00 >; #declare dist_camera = 30.0; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)