#include "textures.inc"
#include "colors.inc"
background{ color White }
// ======================================================================
// FONTES DE LUZ
light_source {
10 * < +50.0, +30.0, +50.0 > // Posição da lâmpada.
color rgb 1.2 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz.
}
light_source {
10 * < +50.0, -10.0, +10.0 > // Posição da lâmpada.
color rgb 0.8 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz.
}
light_source {
10 * < -10.0, 10.0, +10.0 > // Posição da lâmpada.
color rgb 0.8 * < 1.00, 1.00, 1.00 > // Intensidade e corda luz.
}
// ======================================================================
camera {
location 0.55*< 45.00, 35.00, 25.00 >
right < -0.60, 0.00, 0.00 >
up < 0.00, 0.00, 0.80 >
sky < 0.00, 0.00, 1.00 >
look_at < 0.00, 0.00, 0.00 >
}
//eixos
#declare eixox =
cylinder {
< -5.00, 0.00, 0.00 >,
< 5.00, 0.00, 0.00 >,
0.05
pigment { color Red }
}
#declare eixoy =
cylinder {
< 00, -5.00, 0.00 >,
< 00, 5.00, 0.00 >,
0.05
pigment { color Black }
}
#declare eixoz =
cylinder {
< 0.0, 00, -5.00 >,
< 0.0, 00, 5.00 >,
0.05
pigment { color Blue }
}
#declare cor_espelho = <0,0,1>;
#declare tx_espelho =
texture{
pigment { rgb cor_espelho }
finish {
ambient 0.05 diffuse 0.05
reflection Gray
specular 0.20 roughness 0.05
}
}
#declare chao =
plane {z,0
texture{ tx_espelho }
}
#declare corpo =
sphere {
< 0, 0, 0 >,4
pigment{color 0.8*Brown}
scale<1,1,0.6>
}
#declare cabeca =
sphere {
< 0, 0, 0 >,2
pigment{color 0.8*Brown}
scale<1,1,0.6>
translate<0,4,0>
}
#declare antena =
difference{
torus {
2, 0.3
scale<0.8,0.8,0.8>
}
box {
< -5.00, -5.00, 1.00 >,
< 5.00, 5.00, -4.00 >
rotate 45*y
}
pigment{color 0.8*Brown}
rotate -90*z
rotate -20*x
}
#declare fonte1=seed(123456);
#declare i=0;
#declare j=1;
#while(i<6)
#declare beta = 0+(45)*rand(fonte1);//angulo pernoide-preperna
#declare gama = 70+(110-70)*rand(fonte1); //angulo pe-pernoide
#declare alfa = 30+(120-30)*rand(fonte1);//angulo preperna-antiperna
#declare delta = 30+(90-30)*rand(fonte1); //angulo perna-corpo
#declare L1=2;
#declare L2=2.5;
#declare L3=4;
#if((i=0)|(i=3))
#declare B=0;
#declare A=-3.5;
#end
#if((i=1)|(i=4))
#declare B=1.5;
#declare A=-3;
#end
#if((i=2)|(i=5))
#declare B=-1.5;
#declare A=-3;
#end
//#declare A=-3.5;
#declare C=0;
#declare pe =
box {
< -1.00, -1.00, -1.00 >,
< 1.00, 1.00, 0.30 >
scale 0.6*<1,1,1>
pigment{color Brown}
rotate gama*x
translate<0,L1,0>
}
#declare pernoide =
union{
cylinder {
< 0.0, 0, 0.00 >,
< 0.0, L1, 0.00 >,
0.5
pigment{color Brown}
}
object{pe}
rotate beta*x
translate<0,L2,0>
}
#declare preperna =
union{
cylinder {
< 0.0, 0, 0.00 >,
< 0.0, L2, 0.00 >,
0.5
}
sphere {
< 0, L2, 0 >,0.5
pigment{color Brown}
}
object{pernoide}
pigment{color Brown}
rotate alfa*x
translate<0,L3,0>
}
#declare perna =
union{
cylinder {
< 0.0, 0, 0.00 >,
< 0.0, L3, 0.00 >,
0.5
}
sphere {
< 0, L3, 0 >,0.5
pigment{color Brown}
}
object{preperna}
pigment{color Brown}
rotate -180*x
rotate -90*z
rotate -20*y
}
object{corpo}
object{cabeca}
object{antena
translate<-0.8,6,0>
}
object{antena
translate<0.8,6,0>
}
#if(i<3)
//pernadireita
object{ perna
rotate delta*y
translate //posicao da perna
}
#else
//perna esquerda
object{perna
rotate delta*y
translate //posicao da perna
scale <-1,1,1>
}
#end
#declare i=i+1;
#end