// Exemplo de arquivo de descricao de cena para POV-ray // Last edited on 2017-05-07 20:10:09 by stolfilocal // ====================================================================== // CORES E TEXTURAS background{ color rgb < 0.75, 0.80, 0.85 > } #declare Yellow = rgb<255, 255, 0>; #declare Black = rgb < 0.4, 0.4, 0.4 >; #declare tx_plastico = texture{ pigment{ color rgb < 0.4, 0.4, 0.4 > } finish{ diffuse 0.8 ambient 0.1 specular 0.5 roughness 0.005 } } #declare esfera = sphere { < 0, 0, 0>, 0.25 // Near lower left corner texture{ tx_plastico } } #macro interpola(to, vo, t1, v1, tt ) #local r = (tt-to)/(t1-to); #local s = 1-r; #local vv= s*vo+r*v1; vv #end #macro arcobezier(to, t1, a, b, c, d, tt ) #local ab = interpola(to, a, t1, b, tt ); #local bc = interpola(to, b, t1, c, tt ); #local cd = interpola(to, c, t1, d, tt ); #local abc = interpola(to, ab, t1, bc, tt ); #local bcd = interpola(to, bc, t1, cd, tt ); #local abcd = interpola(to, abc, t1, bcd, tt ); abcd #end #macro suavizaX(P,N,i) //Suaviza a junta entre o arco //i e o arco = mod(i+1,N) #local j = mod(i+1,N); #local vv = (P[j][i] - P[i][2])/2; #declare P[i][2] = P[i][3]-vv; #declare P[j][1] = P[j][0]+vv; #end #declare N = 3; #declare P = array[N][4]; #declare P[0][0] = <0,-3,-2>; #declare P[0][1] = <-5,-5,-4>; #declare P[0][2] = <0,4,-2>; #declare P[0][3] = <1,-1,4>; #declare P[1][0] = <1,-1,4>; #declare P[1][1] = <-2,-6,-2>; #declare P[1][2] = <-2,2,0>; #declare P[1][3] = <2,0,2>; #declare P[2][0] = <2,0,2>; #declare P[2][1] = <-5,-6,-1>; #declare P[2][2] = <0,3,1>; #declare P[2][3] = <0,-3,-2>; suavizaX(P,2,0) suavizaX(P,2,1) suavizaX(P,2,2) #declare Q = array[N][4]; #declare Q[0][0] = <4,0,-1>; #declare Q[0][1] = <-1,-2,-2>; #declare Q[0][2] = <4,6,-1>; #declare Q[0][3] = <5,-5,2>; #declare Q[1][0] = <5,-5,2>; #declare Q[1][1] = <2,-1,-1>; #declare Q[1][2] = <2,7,0>; #declare Q[1][3] = <6,5,1>; #declare Q[2][0] = <6,5,1>; #declare Q[2][1] = <-1,-1,-0.5>; #declare Q[2][2] = <4,8,0.5>; #declare Q[2][3] = <4,2,-1>; #macro noh(P,N,M) #local t0 = 0; #local t1 = M; #local i = 0; union { #while(i; #end #end #macro interpola1matriz(P,Q,N,c0,c1,cc,R) #local i = 0; #while(i; #declare raio_cena = 8; #declare dir_camera = < 14.00, 7.00, 4.00 >; #declare dist_camera = 5*raio_cena; #declare intens_luz = 1.20; camlight(centro_cena, raio_cena, dir_camera, dist_camera , z, intens_luz)