// Last edited on 2023-12-30 13:29:11 by stolfi #version 3.7; global_settings { assumed_gamma 2.2 } background{ color rgb < 0.90, 0.85, 0.80 > } #declare textura1 = texture{ pigment{ color rgb < 0, 0, 1 > } finish { diffuse 0.9 ambient 0.1 } } #declare textura2 = texture{ pigment{ color rgb < 0, 1, 0 > } finish { diffuse 0.9 ambient 0.1 } } #declare tx_painel = texture{ pigment{ color rgb<1, 0, 0> } finish{ ambient 0.8 diffuse 0.2 } } #declare base = box{ < 0, 0, 0 >, < 50, 50, 20 > texture{ textura1 } } #declare p1 = < 0, 0, 20 >; #declare p2 = < 0, 50, 20 >; #declare p3 = < 50, 50, 20 >; #declare p4 = < 50, 0, 20 >; #declare p5 = < 25, 25, 45 >; #declare f1 = polygon { 5, p1, p2, p4, p3, p1 } #declare f2 = polygon { 4, p1, p2, p5, p1 } #declare f3 = polygon { 4, p2, p3, p5, p2 } #declare f4 = polygon { 4, p3, p4, p5, p3 } #declare f5 = polygon { 4, p4, p1, p5, p4 } #declare piramide = object { union { object{f1} object{f2} object{f3} object{f4} object{f5} } texture{ textura2 } } #declare painel = box{ < -5, -5, 0 >, < 5, 5, 1 > texture { tx_painel } } #macro templo() union{ object{ base } object{ piramide } object{ painel rotate +45*y translate < 45, 25, 30 > } object{ painel rotate -45*x translate < 25, 45, 30 > } object{ painel rotate -45*y translate < 5, 25, 30 > } object{ painel rotate +45*x translate < 25, 5, 30 > } } #end object{ templo() } #include "direcao_do_sol.inc" #include "parametros.inc" #local dir_norte = < 0.0, cos(radians(lat)), sin(radians(lat)) >; #local dir_sol = direcao_do_sol(lat, lon, mes, hora); #include "eixos.inc" #local cmp_eixos = 50.0; // object{ eixos(cmp_eixos) } #declare cmin = < -2, -2, 0 >; #declare cmax = < 52, 52, 48 >; #declare centro_cena = (cmin + cmax)/2; #include "gaiola.inc" // object{ gaiola(cmin,cmax) } object{ gaichao(cmin,cmax) } #include "camsol.inc" #declare raio_cena = 0.65*vlength(cmax-cmin); #declare intens_luz = 1.20; // #declare vista = 3; camsol(centro_cena, raio_cena, vista, dir_norte, dir_sol, intens_luz)