// Last edited on DATE TIME by USER
// Processed by remove-cam-lights
background{ color rgb < 0.75, 0.80, 0.85 > }

 
 


 

#declare cor_prata = <0.7 0.7 0.8>;
#declare tex_prata =
   texture {
     pigment { rgb cor_prata }
     finish {
       ambient 0.05 diffuse 0.5
       reflection cor_prata
       specular 0.3 roughness 0.7
     }
   }

#declare cor_ouro =  < 1.00, 0.80, 0.10 >;
#declare tex_ouro =
   texture {
     pigment { rgb cor_ouro }
     finish {
       ambient 0.05 diffuse 0.05
       reflection cor_ouro
       specular 0.20 roughness 0.05
     }
   }


#declare a11 = <  2,  0,  0>;
#declare a12 = <  4,  0,  3>;
#declare a13 = <  3,  0,  4>;
#declare a14 = <  0,  0,  2>;

#declare a21 = <  2.2,  3,  0.2>;
#declare a22 = <  8,  3,   6>;
#declare a23 = <  6,  3,   8>;
#declare a24 = <  0.2,  3,  2.2>;

#declare a31 = <  2.3,  6, 0.3>;
#declare a32 = <  10, 6, 8>;
#declare a33 = <  8, 6, 10>;
#declare a34 = <  0.3, 6, 2.3>;

#declare a41 = < 2.4, 9, 0.4>;
#declare a42 = < 12, 9, 10>;
#declare a43 = < 10,9, 12>;
#declare a44 = < 2.4, 9, 0.4>;


#declare b11 = a41;
#declare b12 = a42;
#declare b13 = a43;
#declare b14 = a44;

#declare b21 = <  3,  12,  1>;
#declare b22 = <  12,  12,   10>;
#declare b23 = <  10, 12,   12>;
#declare b24 = <  1, 12,   3>;

#declare b31 = <  8,  15, 6>;
#declare b32 = <  13,  15, 11>;
#declare b33 = <  11, 15, 13>;
#declare b34 = <  6, 15, 8>;

#declare b41 = < 16, 18, 12>;
#declare b42 = < 14, 18, 12>;
#declare b43 = < 12,18, 14>;
#declare b44 = < 12, 18, 16>;


#declare c11 = b41;
#declare c12 = b42;
#declare c13 = b43;
#declare c14 = b44;

#declare c21 = <  20,  19,  16>;
#declare c22 = <  14,  19,  12>;
#declare c23 = <  12, 19,   14>;
#declare c24 = <  16, 19,   20>;

#declare c31 = <  22,  18, 18>;
#declare c32 = <  14,  18, 12>;
#declare c33 = <  12, 18, 14>;
#declare c34 = <  20, 18, 22>;

#declare c41 = < 20, 16, 20>;
#declare c42 = < 18, 16, 14>;
#declare c43 = < 14, 16, 18>;
#declare c44 = < 20, 16, 20>;

#macro pedaco_petala ( p11, p12, p13, p14,
  p21, p22, p23, p24,
  p31, p32, p33, p34,
  p41, p42, p43, p44
  )
 union{
  bicubic_patch {
   type 1
   flatness 0.01
   u_steps 3
   v_steps 3
   p11, p12, p13, p14,
   p21, p22, p23, p24,
   p31, p32, p33, p34,
   p41, p42, p43, p44
 
   texture { tex_prata }
  }
 

 }
#end
 
plane {
  y, 0
  pigment {
     checker .5
 scale <10,10,10>
  }
}

merge {
 object { pedaco_petala( a11, a12, a13, a14,
    a21, a22, a23, a24,
    a31, a32, a33, a34,
    a41, a42, a43, a44
    )
  }
 
 object { pedaco_petala( b11, b12, b13, b14,
    b21, b22, b23, b24,
    b31, b32, b33, b34,
    b41, b42, b43, b44
    )
  }

 object { pedaco_petala( c11, c12, c13, c14,
    c21, c22, c23, c24,
    c31, c32, c33, c34,
    c41, c42, c43, c44
    )
  }
}

merge {
 object { pedaco_petala( a11, a12, a13, a14,
    a21, a22, a23, a24,
    a31, a32, a33, a34,
    a41, a42, a43, a44
    )
  }
 
 object { pedaco_petala( b11, b12, b13, b14,
    b21, b22, b23, b24,
    b31, b32, b33, b34,
    b41, b42, b43, b44
    )
  }

 object { pedaco_petala( c11, c12, c13, c14,
    c21, c22, c23, c24,
    c31, c32, c33, c34,
    c41, c42, c43, c44
    )
  }
 rotate y*90
}

merge {
 object { pedaco_petala( a11, a12, a13, a14,
    a21, a22, a23, a24,
    a31, a32, a33, a34,
    a41, a42, a43, a44
    )
  }
 
 object { pedaco_petala( b11, b12, b13, b14,
    b21, b22, b23, b24,
    b31, b32, b33, b34,
    b41, b42, b43, b44
    )
  }

 object { pedaco_petala( c11, c12, c13, c14,
    c21, c22, c23, c24,
    c31, c32, c33, c34,
    c41, c42, c43, c44
    )
  }
 rotate y*180
}

merge {
 object { pedaco_petala( a11, a12, a13, a14,
    a21, a22, a23, a24,
    a31, a32, a33, a34,
    a41, a42, a43, a44
    )
  }
 
 object { pedaco_petala( b11, b12, b13, b14,
    b21, b22, b23, b24,
    b31, b32, b33, b34,
    b41, b42, b43, b44
    )
  }

 object { pedaco_petala( c11, c12, c13, c14,
    c21, c22, c23, c24,
    c31, c32, c33, c34,
    c41, c42, c43, c44
    )
  }
 rotate y*270
}


// Original camera parameters:
// #local cam_ctr = <0,20,-25>
// #local cam_vec = (<5,10,45>-<0,20,-25>)
// #local cam_sky = y

#include "camlight.inc"
camlight(<0,20,-25>,<10,10,10>,20.0,y,1.0)