#include "direcao_do_sol.inc" #include "parametros.inc" background{ color rgb < 0.75, 0.80, 0.85 > } #declare tx_base = texture{ pigment{ color rgb < 0.5, 0.30, 0.30 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare tx_cinza = texture{ pigment{ color rgb < 0.3, 0.30, 0.30 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare tx_painel = texture{ pigment{ color rgb<1,0,0> } finish { ambient 1 diffuse 0 } } #macro solar1(posicaoInicial) object{ box{ posicaoInicial, posicaoInicial + <0.5,3,9> } texture{ tx_painel } } #end #macro painel1(posicaoInicial) union{ object{ box{ posicaoInicial, posicaoInicial + <2,5,12> } texture{ tx_cinza } } object{ solar1(posicaoInicial + <-0.2,1,2>) } } #end #macro solar2(posicaoInicial) object{ box{ posicaoInicial, posicaoInicial + <3,0.5,9> } texture{ tx_painel } } #end #macro painel2(posicaoInicial) union{ object{ box{ posicaoInicial, posicaoInicial + <5,2,12> } texture{ tx_cinza } } object{ solar2(posicaoInicial + <1,-0.2,2>) } } #end #macro base() union{ object{ box{ <0,0,0>, <25,25,4> } texture{ tx_base } } object{ box{ <3,3,4>, <22,22,8> } texture{ tx_base } } } #end union{ object{ painel1(<18,10,8>) rotate 9*y } object{ painel1(<18,10,8>) rotate 9*y translate<-26,0,0> scale<-1,1,1>} object{ painel2(<9,18,8>) rotate -9*x } object{ painel2(<9,18,8>) rotate -9*x translate<0,-25,0> scale<1,-1,1>} object{ painel2(<9,18,8>) rotate -9*x rotate -23*z translate<0,3,0>} object{ painel2(<9,18,8>) rotate -9*x rotate 15*z translate<0,-28,0> scale<1,-1,1>} object{ base() } } #declare dir_sol = direcao_do_sol(lat, lon, mes, hora); #include "camlight.inc" #declare centro_cena = < 12, 12, 4 >; #declare raio_cena = 30.0; #declare dir_camera = dir_sol; #declare dist_camera = 200*raio_cena; #declare intens_luz = 1.20; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)