#include "colors.inc" camera { location < 20.0,20.0, 4.0> look_at <0.0,-10.0,6.0> angle 60 } background { color <0.0,0.0,0.3> } light_source { <10,10,10> White } light_source { <20,10,0> Blue } #declare folha1 = bicubic_patch { #declare z0 = 0; #declare z1 = 0.3; #declare z2 = 3.5; #declare z3 = 4.0; #declare y1 = 2.7; #declare y2 = 3.0; #declare y3 = 4.7; #declare ya0 = 2.0; #declare ya1 = y1+0.5; #declare ya2 = y2+0.2; #declare ya3 = y3; #declare x0 = 0.5; #declare x1 = 3.6; #declare x2 = 0.2; #declare x3 = 0.0; type 1 flatness 0.01 u_steps 4 v_steps 4, <0,0,0> < -x0,ya0, 0> <0,0,0> <0,y1,z1> <-x1,ya1,z1> <0,y1,z1> <0,y2,z2> <-x2,ya2,z2> <0,y2,z2> <0,y3,z3> <-x3,ya3,z3> <0,y3,z3> texture{ pigment { color rgb <0.3,1.0,0.3> } } } #declare folha2 = bicubic_patch { #declare z0 = 0; #declare z1 = 1.6; #declare z2 = 5.5; #declare z3 = 6.0; #declare y1 = 1.35; #declare y2 = 2.5; #declare y3 = 1.0; #declare ya0 = 2.0; #declare ya1 = y1+0.2; #declare ya2 = y2+0.2; #declare ya3 = y3; #declare x0 = 1.0; #declare x1 = 2.6; #declare x2 = 0.2; #declare x3 = 0.0; type 1 flatness 0.01 u_steps 4 v_steps 4, <0,0,0> < -x0,ya0, 0> <0,0,0> <0,y1,z1> <-x1,ya1,z1> <0,y1,z1> <0,y2,z2> <-x2,ya2,z2> <0,y2,z2> <0,y3,z3> <-x3,ya3,z3> <0,y3,z3> texture{ pigment { color rgb <1.0,0.0,0.0> } } } #declare folha3 = bicubic_patch { #declare z0 = 0; #declare z1 = 0.9; #declare z2 = 18.5; #declare z3 = 23.0; #declare y1 = 2.7; #declare y2 = 3.0; #declare y3 = 4.7; #declare ya0 = 2.0; #declare ya1 = y1+0.5; #declare ya2 = y2+0.2; #declare ya3 = y3; #declare x0 = 0.5; #declare x1 = 5.6; #declare x2 = 3.2; #declare x3 = 0.0; type 1 flatness 0.01 u_steps 4 v_steps 4, <0,0,0> < -x0,ya0, 0> <0,0,0> <0,y1,z1> <-x1,ya1,z1> <0,y1,z1> <0,y2,z2> <-x2,ya2,z2> <0,y2,z2> <0,y3,z3> <-x3,ya3,z3> <0,y3,z3> texture{ pigment { color rgb <0.3,1.0,0.3> } } } #declare caule = union { #declare z0 = 0; #declare z1 = -10; #declare z2 = -18; #declare z3 = -24; #declare r0 = 0.35; #declare r1 = 0.4; #declare r2 = 0.45; #declare r3 = 0.45; #declare d = 1.8; #declare d0 = 0*d; #declare d1 = 2*d; #declare d2 = 2*d; #declare d3 = 1*d; bicubic_patch { type 1 flatness 0.01 u_steps 4 v_steps 4, <-r0+d0,r0,z0> <-r0+d0,0,z0> <-r1+d1,r1,z1> <-r1+d1,0,z1> <-r2+d2,r2,z2> <-r2+d2,0,z2> <-r3+d3,r3,z3> <-r3+d3,0,z3> } bicubic_patch { type 1 flatness 0.01 u_steps 4 v_steps 4, <-r0+d0,-r0,z0> <-r0+d0,0,z0> <-r1+d1,-r1,z1> <-r1+d1,0,z1> <-r2+d2,-r2,z2> <-r2+d2,0,z2> <-r3+d3,-r3,z3> <-r3+d3,0,z3> } object{ folha3 translate } object{ folha3 rotate 70*z translate } object{ folha3 rotate 130*z translate } object{ folha3 scale 0.7 rotate 190*z translate } object{ folha3 rotate 250*z translate } object{ folha3 rotate 310*z translate } object{ folha3 scale 0.3 rotate 100*z translate } object{ folha3 scale 0.25 rotate 190*z translate } object{ folha3 scale 0.45 rotate 230*z translate } object{ folha3 scale 0.55 rotate 300*z translate } texture{ pigment { color rgb <0.3,1.0,0.3> } } } #declare flor = union { object { folha1 } object { folha1 scale 0.9 rotate 45*z } object { folha1 scale 0.8 rotate 70*z } object { folha1 scale 0.9 rotate 108*z } object { folha1 scale 0.9 rotate 150*z } object { folha1 scale 0.8 rotate 190*z } object { folha1 scale 0.9 rotate 220*z } object { folha1 scale 0.8 rotate 250*z } object { folha1 scale 0.95 rotate 290*z } object { folha1 scale 0.95 rotate 320*z } object { folha2 } object { folha2 scale 0.9 rotate 45*z } object { folha2 scale 0.8 rotate 70*z } object { folha2 scale 0.9 rotate 108*z } object { folha2 scale 0.9 rotate 150*z } object { folha2 scale 0.8 rotate 190*z } object { folha2 scale 0.9 rotate 220*z } object { folha2 scale 0.8 rotate 250*z } object { folha2 scale 0.95 rotate 290*z } object { folha2 scale 0.95 rotate 320*z } } #declare planta = union { object { flor rotate -90*x } object { caule rotate -90*x} } object { planta } object { planta rotate 40*y translate <7,0,5> } object { planta rotate 70*y translate <5,0,10> } object { planta scale 0.7 rotate 110*y translate <2,0,7> }