#version 3.5; #include "colors.inc" #include "metals.inc" global_settings { assumed_gamma 1.0 } #declare cf=10; background {color rgb <1,1,1> } camera { location vrotate(<0.0, 0, -4.0>*cf ,y*00) look_at <.5, 0.3, 0.0> angle 15/cf} #declare fin=superellipsoid { <.3,.3> } #declare fin2=intersection{ cylinder{-.7*y,.7*y,1.0} box{-1.1,1.1} } #declare fin=fin2; #declare cylbasew=.85/10.8; //half-widths!!! #declare cyltopw=2.1*cylbasew; //full height!!! #declare cylheight=2*cyltopw; #declare cylcapheight=.7*cylbasew; #declare nfins=16; #declare finheight=cylheight/nfins/3; #declare ecorerad=1.86/10.8; #declare cyl=union{ #declare fcount=1; #while(fcount translate (fcount+.5)*cylheight/nfins*y} #declare fcount=fcount+1; #end cone{0*x,cylbasew*.6,cylheight*y,cyltopw*.7} cylinder{-.1*z,cylheight*y,cylbasew*.1 translate cylbasew*.9*(x+z)} cylinder{-.1*z,cylheight*y,cylbasew*.1 translate -cylbasew*.9*(x+z)} cylinder{-.1*z,cylheight*y,cylbasew*.1 translate cylbasew*.9*(x-z)} cylinder{-.1*z,cylheight*y,cylbasew*.1 translate cylbasew*.9*(-x+z)} superellipsoid { <.5,.5> scale cyltopw*(x+z)+cylcapheight*y translate y*cylheight } texture{T_Chrome_5C } } union{ object{cyl} texture{T_Chrome_5C } translate -.5*x} union{ cylinder{-1.2*cylbasew*z,1.2*cylbasew*z,ecorerad} object{cyl translate y*.9*ecorerad rotate z*25} object{cyl translate y*.9*ecorerad rotate y* 10 rotate -z*25} texture{T_Chrome_5C } translate .5*x} light_source { <0, 2, -5> }