// Last edited on DATE TIME by USER
// Processed by remove-cam-lights

#include "colors.inc"
#include "golds.inc"
  
 

background { color rgb<0.2, 0.4, 0.8>  }  
  
 
 
  

#declare ponta =
  lathe {
    linear_spline
    5,
   <1.0,   -1.0>,
    <1.0,   1.0>,
    <1.0,   2.0>,
    <3.0,  7.5>,
    <4.0,  10.0>
    texture { T_Gold_1B }
    finish {
      ambient .3
      phong .75
    }
  }  
  
#declare curva = 
difference{
  object{
    lathe {
      quadratic_spline
      8,
      <3.0,   2.0>,
      <3.8,   2.2>,
      <4.0,   3.0>,
      <3.8,   3.8>,
      <3.0,   4.0>,
      <2.2,   3.8>,
      <2.0,   3.0>,
      <2.2,   2.2>
      texture { T_Gold_1B }
      finish {
        ambient .3
        phong .75
      }
    } 
  }
  object{  
    box{
      <0,10,10>,
      <-10,-10,-10>
      texture { T_Gold_1B }
    }
  }
}

#declare trombone = 
union{
  
  object{ponta}
   
  object{
    curva
    rotate<90,0,0>
    rotate<0,0,-90>
    translate<0,1,0>
    translate<0,0,-3>
    translate<3,0,0>
    translate<0,-10,0>
  }
  
  object{
    curva
    rotate<90,0,0>
    rotate<0,0,-90>
    translate<0,1,0>
    translate<0,0,-3>
    translate<3,0,0>
    translate<0,-10,0>
    rotate<180,0,0>
    translate<6,0,0>
    translate<0,3,0>
  }
  
  object{
    cylinder {
      < 0, -1, 0 >,
      < 0, -9, 0 >,
      1
      texture { T_Gold_1B }
    }
  }
  
  object{
    cylinder {
      < 6, 12, 0 >,
      < 6, -9, 0 >,
      1
      texture { T_Gold_1B }
    }
  }
  
  object{
    cylinder {
      < 12, 12, 0 >,
      < 12, -6 0 >,
      1
      texture { T_Gold_1B }
    }
  }
  
  object{
    ponta
    rotate<0,0,180>
    scale<1/2,1/2,1/2>
    translate<12,-2,0>
  }
}

declare caixa = 
difference{
  object{
    prism {
      conic_sweep
      linear_spline
      0, 
      1, 
      5, 
      <17,17>,<-17,17>,<-17,-17>,<17,-17>,<17,17>
      rotate <180, 0, 0>
      translate <0, 1, 0>
      scale <1, 8, 1>
      pigment { Green }
      rotate<90,0,0>
      translate<5,1,0>
    }
  }
  
  object{trombone}
  object{
    cylinder {
      < 0, 10, 0 >,
      < 0, -9, 0>,
      1
      texture { T_Gold_1B }
    }
  }
}

union{
  object{trombone}
  object{
    caixa
    translate<0,0,20>
  }
  rotate<0,-70,0>
}

  

// Original camera parameters:
// #local cam_ctr = <-5,2,0>
// #local cam_vec = (<10,15,-60>-<-5,2,0>)
// #local cam_sky = y

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