#include "colors.inc" #include "textures.inc" #declare INSIDEWIDTH=9.5 #declare INSIDEDEPTH=7 #declare INSIDEBOTHEIGHT=3.5 #declare INSIDETOPHEIGHT=1 #declare THICKNESS=0.25 #declare LIDANGLE=60 #declare GUSSETSEPARATION=1 #declare GUSSETTHICKNESS=0.75 camera { location <10,5,10> look_at <0,0,0> /* location <10,-6,10> look_at */ } light_source { <-5,10,5> color White } light_source { <10,5,10> color White } #declare Poplar = texture { pigment { wood turbulence 0.005 color_map { [0.000, 0.222 color red 0.675 green 0.671 blue 0.301 filter 0 color red 0.675 green 0.671 blue 0.301 filter 0] [0.222, 0.342 color red 0.675 green 0.671 blue 0.301 filter 0 color red 0.600 green 0.349 blue 0.043 filter 0] [0.342, 0.393 color red 0.600 green 0.349 blue 0.043 filter 0 color red 0.675 green 0.671 blue 0.301 filter 0] [0.393, 0.709 color red 0.675 green 0.671 blue 0.301 filter 0 color red 0.675 green 0.671 blue 0.301 filter 0] [0.709, 0.821 color red 0.675 green 0.671 blue 0.301 filter 0 color red 0.533 green 0.298 blue 0.027 filter 0] [0.821, 1.000 color red 0.533 green 0.298 blue 0.027 filter 0 color red 0.800 green 0.700 blue 0.300 filter 0] } scale 0.35 } } #declare PurplePoplar = texture { pigment { wood turbulence 0.005 color_map { [0.000, 0.342 color red 0.400 green 0.400 blue 0.400 filter 0 color red 0.600 green 0.349 blue 0.043 filter 0] [0.342, 0.393 color red 0.600 green 0.349 blue 0.043 filter 0 color red 0.675 green 0.471 blue 0.301 filter 0] [0.393, 0.709 color red 0.675 green 0.471 blue 0.301 filter 0 color red 0.675 green 0.471 blue 0.301 filter 0] [0.709, 0.821 color red 0.675 green 0.471 blue 0.301 filter 0 color red 0.533 green 0.298 blue 0.027 filter 0] [0.821, 1.000 color red 0.533 green 0.298 blue 0.027 filter 0 color red 0.300 green 0.300 blue 0.300 filter 0] } scale 0.35 } } #declare bottom=box { <0,0,0>, translate <-INSIDEWIDTH/2-THICKNESS/2,-THICKNESS/2,-INSIDEDEPTH/2-THICKNESS/2> //pigment {White} texture { Poplar rotate y*90 translate <0.14,0.23,0.5>} } #declare top=box { <0,0,0>, translate <-INSIDEWIDTH/2,-THICKNESS/2,-INSIDEDEPTH/2> //pigment {White} texture { Poplar rotate y*90 translate <0.14,0.23,0.5>} } #declare longside=difference { box { <0,0,0>, translate <-INSIDEWIDTH/2-THICKNESS,-THICKNESS/2,-INSIDEBOTHEIGHT/2> } box { <0,0,0>, translate <-INSIDEWIDTH/2-THICKNESS,-THICKNESS/4,-THICKNESS/2> scale <1.01,1.01,1.01> translate <0,THICKNESS/4,-INSIDEBOTHEIGHT/2+THICKNESS/2> } //pigment {White} texture { Poplar rotate y*90 translate <0.23,0.5,0.9>} rotate x*-90 rotate y*180 } #declare shortside=difference { box { <0,0,0>, translate <-INSIDEDEPTH/2-THICKNESS,-THICKNESS/2,-INSIDEBOTHEIGHT/2> } box { <0,0,0>, translate <-INSIDEDEPTH/2-THICKNESS,-THICKNESS/4,-THICKNESS/2> scale <1.01,1.01,1.01> translate <0,THICKNESS/4,-INSIDEBOTHEIGHT/2+THICKNESS/2> } //pigment {White} texture { Poplar rotate y*90 translate <0.23,0.5,0.9>} rotate x*-90 rotate y*90 } #declare topshortside=box { <0,0,0>, translate <-INSIDEDEPTH/2-THICKNESS,-THICKNESS/2,-INSIDETOPHEIGHT/2> //pigment {White} texture { Poplar rotate y*90 translate <0.23,0.5,0.9>} rotate x*-90 rotate y*90 } #declare toplongside=box { <0,0,0>, translate <-INSIDEWIDTH/2-THICKNESS,-THICKNESS/2,-INSIDETOPHEIGHT/2> //pigment {White} texture { Poplar rotate y*90 translate <0.23,0.5,0.9>} rotate x*-90 rotate y*180 } #declare gusset=difference { box {<-THICKNESS,-GUSSETTHICKNESS/2,-THICKNESS>,} box {<-1,-GUSSETTHICKNESS,-1>,<0,GUSSETTHICKNESS,1> rotate y*45} scale <1.01,1.01,1.01> //pigment {White} texture { PurplePoplar rotate y*90 translate <0.23,0.5,0.9>} } object { longside translate <0,0,-INSIDEDEPTH/2-THICKNESS/2> } object { longside rotate y*180 translate <0,0,INSIDEDEPTH/2+THICKNESS/2> } object { shortside translate } object { shortside rotate y*180 translate <-INSIDEWIDTH/2-THICKNESS/2,0,0> } object { bottom translate <0,-INSIDEBOTHEIGHT/2+THICKNESS/2,0> } union { object { top translate <0,INSIDEBOTHEIGHT/2+INSIDETOPHEIGHT-THICKNESS/2,0> } object { toplongside translate <0,INSIDEBOTHEIGHT/2+INSIDETOPHEIGHT/2,-INSIDEDEPTH/2-THICKNESS/2> } object { toplongside rotate y*180 translate <0,INSIDEBOTHEIGHT/2+INSIDETOPHEIGHT/2,INSIDEDEPTH/2+THICKNESS/2> } object { topshortside translate } object { topshortside rotate y*180 translate <-INSIDEWIDTH/2-THICKNESS/2,INSIDEBOTHEIGHT/2+INSIDETOPHEIGHT/2,0> } translate <0,-INSIDEBOTHEIGHT/2,INSIDEDEPTH/2+THICKNESS> rotate x*-LIDANGLE translate <0,INSIDEBOTHEIGHT/2,-INSIDEDEPTH/2-THICKNESS> } box { <0,0,0>, translate <-INSIDEWIDTH/2-THICKNESS,-THICKNESS/2,-THICKNESS/4> scale <1.01,1.01,1.01> translate <0,0,INSIDEDEPTH/2+THICKNESS*3/4> //pigment {White} texture { PurplePoplar rotate y*90 translate <0.23,0.5,0.9>} } box { <0,0,0>, translate <-INSIDEWIDTH/2-THICKNESS,-THICKNESS/2,-THICKNESS/4> scale <1.01,1.01,1.01> translate <0,0,-INSIDEDEPTH/2-THICKNESS*3/4> //pigment {White} texture { PurplePoplar rotate y*90 translate <0.23,0.5,0.9>} } box { <0,0,0>, translate <-INSIDEDEPTH/2-THICKNESS,-THICKNESS/2,-THICKNESS/4> scale <1.01,1.01,1.01> rotate y*90 translate //pigment {White} texture { PurplePoplar rotate y*90 translate <0.23,0.5,0.9>} } box { <0,0,0>, translate <-INSIDEDEPTH/2-THICKNESS,-THICKNESS/2,-THICKNESS/4> scale <1.01,1.01,1.01> rotate y*90 translate <-INSIDEWIDTH/2-THICKNESS*3/4,0,0> //pigment {White} texture { PurplePoplar rotate y*90 translate <0.23,0.5,0.9>} } // top gussets object { gusset rotate y*-90 translate } object { gusset translate } object { gusset rotate y*90 translate <-INSIDEWIDTH/2,GUSSETSEPARATION,-INSIDEDEPTH/2> } object { gusset rotate y*-180 translate <-INSIDEWIDTH/2,GUSSETSEPARATION,INSIDEDEPTH/2> } // bottom gussets object { gusset rotate y*-90 translate } object { gusset translate } object { gusset rotate y*90 translate <-INSIDEWIDTH/2,-GUSSETSEPARATION,-INSIDEDEPTH/2> } object { gusset rotate y*-180 translate <-INSIDEWIDTH/2,-GUSSETSEPARATION,INSIDEDEPTH/2> }