// Last edited on 2005-01-05 22:34:09 by stolfi
// Processed by remove-cam-lights
#include "textures.inc"
#include "colors.inc"
background{ color rgb < 0.75, 0.80, 0.85 > }
#declare raio = 2.000;
#declare tinta1 =
texture {
pigment { color rgb < 0.10, 0.80, 1.00 > }
finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 }
}
#declare tinta2 =
texture {
pigment { color rgb < 0.40, 0.10, 0.70 > }
finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 }
}
#declare tinta3 =
texture {
pigment { color rgb < 0, 0, 0 > }
finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 }
}
#declare tinta4 =
texture {
pigment { color rgb < 0.0, 0.0, 0.0 > }
finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 }
}
#declare tinta5 =
texture {
pigment { color rgb < 1, 1, 1 > }
finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 }
}
#declare tinta6 =
texture {
pigment { color rgb < 1, 1, 0 > }
finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 }
}
#declare tinta7 =
texture {
pigment { color rgb < 1, 1, 1 > }
finish { diffuse 0.8 specular 0.2 roughness 0.005 ambient 0.1 }
}
#declare chamine =
lathe {linear_spline
5,
<0.5,0>,
<0.5,1>,
<1,2.5>,
<1,2.8>,
<0.5,4>
texture {Chrome_Metal}
}
#declare locomotiva =
union{
box{ <0,0,0>,<5,3,4>
texture {tinta5}
}
difference{
cylinder{
<0,1.5,1>,
<-4,1.5,1>,
1.8
texture {Chrome_Metal}
}
box{
<-5,-2,-1>,
<5,5,0>
texture{tinta1}
}
}
}
#declare roda =
union{
cylinder{
<0,0,1>,
<0,.3,1>,
1
texture {tinta3}
}
cylinder{
<0,.3,1>,
<0,3.8,1>,
.2
texture {tinta2}
}
cylinder{
<0,3.8,1>,
<0,4.1,1>,
1
texture {tinta3}
}
}
#declare fundo =
plane {z,0
texture{Jade}
scale 0.5
}
#declare janela =
box{<0,0,0>,<4,1.5,1.5>
texture{tinta1}
}
#declare vagao =
union{
difference{
box{<0,0,0>,<9,3,4.5>
texture {Chrome_Metal}
}
union{
object{janela rotate z*90 translate <3,-.5,2.5>}
object{janela rotate z*90 translate <5,-.5,2.5>}
object{janela rotate z*90 translate <7,-.5,2.5>}
}
}
cylinder{<9,1.5,1.5>,
<10,1.5,1.5>,
.5
texture {tinta1}
}
cylinder{<0,1.5,1.5>,
<-1,1.5,1.5>,
.5
texture {tinta1}
}
object{roda translate <1,-.4,0>}
object{roda translate <3.5,-.4,0>}
object{roda translate <6,-.4,0>}
object{roda translate <8.5,-.4,0>}
}
#declare gerador = seed(10);
#declare frente =
union {
object{locomotiva rotate z*-90 translate <0,0,2>}
object {roda rotate z*-90 translate <-.4,3.5,1>}
object {roda rotate z*-90 translate <-.4,-3,1>}
object {chamine rotate x*90 translate <1.5,3,4> }
object{fundo}
}
#declare gerador = seed(10);
#declare fim =
union{
#declare i=0;
object {frente translate <7,8,-1.5 > rotate z*30 }
#declare a= rand(gerador)*5 +5;
#while(i rotate z*-60 }
#declare i=i+1;
#end
}
#declare trilho =
union{
box{<0,0,0>,<5,.2,.2>
texture {tinta7}
}
box{<0,-4,0>,<5,-4.2,.2>
texture{tinta7}
}
}
#declare gerador = seed(10);
#declare trilhofim =
union{
#declare i=0;
object {frente translate <7,8,-1.5 > rotate z*30 }
#declare a= rand(gerador)*5 +500;
#while(i rotate z*122.5}
#declare i=i+1;
#end
}
#declare fim =
union{
object {fim rotate z*3}
object {trilhofim}
}
object {fim rotate z*30 translate <-30,0,0>}
#include "camlight.inc"
camlight(<0,0,0>,<35,70,70>,1.00,z,1.0)