// Last edited on 2005-01-05 23:11:19 by stolfi
// Processed by remove-cam-lights

background{ color rgb <1.0, 1.0, 1.0> }

#declare cor_adorno = <1.00, 0.00, 0.00>;
#declare tx_adorno =
  texture {
    finish {
      ambient 0.1 diffuse 0.1 reflection 0.15
      specular 1 roughness 0.001
    }
    pigment { color cor_adorno filter 1}
  }

#declare cor_corpo = <0.80, 0.80, 0.0>;
#declare tx_corpo =
  texture {
    pigment { rgb cor_corpo }
    finish {
      ambient 0.05 diffuse 0.05
      reflection cor_corpo
      specular 0.20 roughness 0.05
    }
  }

#declare cor_cinta = <0.40, 0.40, 0.40>;
#declare tx_cinta =
  texture {
    pigment { rgb cor_cinta }
    finish {
      ambient 0.05 diffuse 0.05
      reflection cor_cinta
      specular 0.20 roughness 0.05
    }
  }

#declare cinta_baixa =
  torus {
    10, 1
    rotate 90*x
    texture { tx_cinta }
  }

#declare cinta_alta =
  torus {
    12, 1
    rotate 90*x
    translate 5*z
    texture { tx_cinta }
  }

#declare corpo_coroa =
  lathe {
    linear_spline
    4,
    <9.50,0>, <10.50,0>, <11.50,5>, <12.50,5>
    texture { tx_corpo }
    rotate 90*x
  }

#declare adorno =
  lathe {
    linear_spline
    9,
    <0,0>, <2,0>, <2,3>, <3,3>, <3,5>, <2,5>, <2,7>, <3,8>, <0,15>
    texture { tx_adorno }
    rotate 90*x
    scale 0.5
    interior { ior 1.2 }
  }

  plane {
    z,
    -1
    texture {
      pigment { checker <0.5,0.5,0.5>, <1,1,1> }
      finish { ambient 0.6 diffuse 0.4 }
      scale 15
    }
  }

 union {
  object { cinta_baixa }
  object { cinta_alta }
  object { corpo_coroa }

  object {
    adorno
    translate <0, -12, 6>
  }
  object {
    adorno
    translate <0, 12, 6>
  }
  object {
    adorno
    translate <-12, 0, 6>
  }
  object {
    adorno
    translate <12, 0, 6>
  }
 }

#include "camlight.inc"
camlight(<0,0,0>,<25.00,25.00,25.00>,1.10,z,1.0)