// 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)