// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2010-03-04 15:44:01 by stolfi // ====================================================================== // CORES E TEXTURAS #include "textures.inc" #include "eixos.inc" #include "colors.inc" #include "retalho.inc" background{ color White } // ====================================================================== // DESCRIÇÃO DA CENA // Partes da cena: #declare chassi = union{ object{box{<0,0,0>, <4,7,2>} pigment {color Red} } object{box{<0,2,2>, <4,7,3.5>} pigment {color Green}} } #macro interpole(ta, va, tb, vb, tt) #local s = (tt-ta)/(tb-ta); ((1-s)*va+s*vb) #end #macro lataria() #local A01 = <3,0,0.75>; #local A02 = <3,0,3>; #local A00 = <0,0,0.75>; #local A03 = <0,0,3>; #local A11 = <3,2,0.25>; #local A12 = <3,2,3.75>; #local A10 = <0,2,0.25>; #local A13 = <0,2,3.75>; #local A21 = <3,4,0>; #local A22 = <3,4,6>; #local A20 = <0,4,0>; #local A23 = <0,4,6>; // segundo retalho #local B11 = <3,8,0>; #local B12 = <3,8,6.5>; #local B10 = <0,8,0>; #local B13 = <0,8,6.5>; #local B21 = <3,10,0.25>; #local B22 = <3,10,5.4>; #local B20 = <0,10,0.25>; #local B23 = <0,10,5.4>; //terceiro retalho #local C11 = <3,14,0.25>; #local C12 = <3,14,0>; #local C10 = <0,14,0.25>; #local C13 = <0,14,4>; #local C21 = <3,15,0>; #local C22 = <3,15,5.4>; #local C20 = <0,15,0>; #local C23 = <0,15,5.4>; #local C31 = <3,16,0>; #local C32 = <3,16,5.4>; #local C30 = <0,16,0>; #local C33 = <0,16,5.4>; // pontos dos meios #local AB0 = (A20+B10)/2; #local AB1 = (A21+B11)/2; #local AB2 = (A22+B12)/2; #local AB3 = (A23+B13)/2; #local BC0 = (B20+C10)/2; #local BC1 = (B21+C11)/2; #local BC2 = (B22+C12)/2; #local BC3 = (B23+C13)/2; //pontas #local P0 = <3,0,0.75>; #local P1 = <3,0,3>; #local P2 = <0,0,0.75>; #local P3 = <0,0,3>; #local rg = 0.01; union{ object{ retalho( A00,A01,A02,A03, A10,A11,A12,A13, A20,A21,A22,A23, AB0,AB1,AB2,AB3, rg, pigment{color Blue}, pigment{ color Red } ) } //retalho 2 object{ retalho( AB0,AB1,AB2,AB3, B10,B11,B12,B13, B20,B21,B22,B23, BC0,BC1,BC2,BC3, rg, pigment{color Blue}, pigment{ color Green } ) } //retalho 2 object{ retalho( BC0,BC1,BC2,BC3, C10,C11,C12,C13, C20,C21,C22,C23, C30,C31,C32,C33, rg, pigment{color Blue}, pigment{ color Blue } ) } } #end // Aqui está a cena, finalmente: // parametros gerais #declare asa = object{ box { <0,0,0>, <5,5,0.7> } translate <2.5,5,3> pigment{ color Gray } } union{ eixos(10) union{ object{ lataria() } object{ asa } } union{ object{ lataria() } object{ asa } scale <-1,1,1> } } #include "camlight.inc" #declare centro_cena = < 0.00, 6.00, 0.00 >; #declare raio_cena = 30.0; #declare dir_camera = < 5, -3, 2 >; #declare dist_camera = 30.0; #declare intens_luz = 1.00; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)