#include "colors.inc" #include "shapes.inc" #include "glass.inc" #include "textures.inc" background { Gray } camera { angle 55 location <-15,25,35> look_at <15,5,8> } light_source { <0,45,-40> White} #declare A1 = <7,0,8> #declare A2 = <9,1,8> #declare A3 = <11,1,8> #declare A4 = <13,0,8> #declare A5 = <3,0,6> #declare A6 = <9,0,5> #declare A7 = <11,0,5> #declare A8 = <13,0,5> #declare A9 = <1,0,3> #declare A10 = <8,0,3> #declare A11 = <11,0,3> #declare A12 = <13,0,3> #declare A13 = <0,0,0> #declare A14 = <8,0.5,0> #declare A15 = <11,0.5,0> #declare A16 = <13,0.5,0> #declare B1 = <13,0,8> #declare B2 = <17,4,8> #declare B3 = <24,4,8> #declare B4 = <27,0,8> #declare B5 = <13,0,5> #declare B6 = <17,4,5> #declare B7 = <24,4,5> #declare B8 = <27,0,5> #declare B9 = <13,0,3> #declare B10 = <17,4,3> #declare B11 = <24,4,3> #declare B12 = <27,0,3> #declare B13 = <13,0.5,0> #declare B14 = <17,4,0> #declare B15 = <24,4,0> #declare B16 = <27,0,0> #declare C1 = <27,0,8> #declare C2 = <29,1,8> #declare C3 = <32,1,8> #declare C4 = <33,0,8> #declare C5 = <27,0.5,5> #declare C6 = <29,0.5,5> #declare C7 = <32,0.5,5> #declare C8 = <33,0.5,5> #declare C9 = <27,0,3> #declare C10 = <29,0,3> #declare C11 = <32,0,3> #declare C12 = <33,0,3> #declare C13 = <27,0,0> #declare C14 = <29,0,0> #declare C15 = <32,0,0> #declare C16 = <33,0,0> #declare patchA = bicubic_patch { type 1 flatness 0.1 u_steps 4 v_steps 4, A1,A2,A3,A4, A5,A6,A7,A8, A9,A10,A11,A12, A13,A14,A15,A16 } #declare patchB = bicubic_patch { type 1 flatness 0.1 u_steps 4 v_steps 4, B1,B2,B3,B4, B5,B6,B7,B8, B9,B10,B11,B12, B13,B14,B15,B16 } #declare patchC = bicubic_patch { type 1 flatness 0.1 u_steps 4 v_steps 4, C1,C2,C3,C4, C5,C6,C7,C8, C9,C10,C11,C12, C13,C14,C15,C16 } object {patchA texture { pigment {color rgb<0.5,1,0.5>}} } object {patchA texture { pigment {color rgb<0.5,1,0.5>}} scale<1,1,-1> } object {patchB texture { pigment {color rgb<0.5,1,0.5>}} } object {patchB texture { pigment {color rgb<0.5,1,0.5>}} scale<1,1,-1> } object {patchC texture { pigment {color rgb<0.5,1,0.5>}} } object {patchC texture { pigment {color rgb<0.5,1,0.5>}} scale<1,1,-1> } plane {y,-1.5 pigment {checker Red, White} } sphere { A1, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A2, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A3, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A4, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A5, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A6, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A7, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A8, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A9, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A10, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A11, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A12, 0.5 texture{ pigment{color rgb<0.5,0.5,1>}} } sphere { A13, 0.5 texture{ pigment{color rgb<1,0.5,1>}} } sphere { A14, 0.5 texture{ pigment{color rgb<1,0.5,1>}} } sphere { A15, 0.5 texture{ pigment{color rgb<1,0.5,1>}} } sphere { A16, 0.5 texture{ pigment{color rgb<1,0.5,1>}} } #declare bola = sphere { <20,0,-35>, 6 pigment { White filter 1 } finish { ambient .1 diffuse .1 reflection .2 specular 1 roughness .001 irid { 0.35 thickness .5 turbulence .5 } } interior{ ior 1.5 fade_distance 5 fade_power 1 caustics 1 } } object {bola} object {bola translate <25,-2,0> } object {bola translate <45,-3,20> } object {bola translate <56,-4.3,40> }