//TV guide icon. //render settings: +w192 +h192 +fn +ua global_settings { assumed_gamma 1 } //body intersection { //box { <-1,-1,-.8>, <1,.75,.5> } superellipsoid { <.1,.1> scale (<1,.75,.5>-<-1,-1.1,-.8>)/2 translate (<1,.75,.5>+<-1,-1.1,-.8>)/2 } intersection {plane{ y, -.75 }plane{ y, 0 rotate z*60 translate -.9*x-y }plane{ y, 0 rotate -z*60 translate .9*x-y } inverse } intersection {plane{ y, -.75 }plane{ y, 0 rotate -x*60 translate -.7*z-y }plane{ y, 0 rotate x*60 translate .4*z-y } inverse } plane { -y, 1 } pigment { rgb <.2,.07,.04> } finish { diffuse .8 ambient .2 } } intersection { //rear cone thing plane { -z, -.5 } plane { z, .9 } plane { -x+z/2, 0 translate <-.9,0,.5> } plane { x+z/2, 0 translate <.9,0,.5> } plane { -y+z/2, 0 translate <0,-.7,.5> } plane { y+z/2, 0 translate <0,.7,.5> } pigment { rgb .1 } finish { diffuse 1 ambient .2 } } //screen superellipsoid { <.4,.7> scale <1,.75,.3>*.8 translate z*(.3-.8-.2) texture { pigment { //TV snow gradient -y scale .08+1000*z warp { turbulence .05 octaves 2 } cubic_wave rotate z*10 pigment_map { [0 hexagon rgb <0,-1,-1>, rgb <-1,.5,-1>, rgb <-1,-1,1> scale .2 rotate x*90][1 hexagon rgb <2,1,1>, rgb <1,2.5,1>, rgb <1,1,3> scale .2 rotate x*90] } } finish { ambient .7 } } texture { pigment { rgbt 1 } finish { reflection { .05,1 falloff 5 exponent .5 } conserve_energy specular 2 roughness .05 } } } //cute aerial union { sphere { -.05*y, .2 } union { sphere { y, .1 } cylinder { 0, y, .05 } scale .5 rotate z*30 } union { sphere { y, .1 } cylinder { 0, y, .05 } scale .5 rotate -z*30 } translate y*.7-z*.2 finish { reflection .7 specular 2 roughness .1 } } //reflected surroundings union { box { -1, 1 pigment { spherical scale sqrt(3) colour_map { [0 rgb .6] [1-1/sqrt(3) rgb 1] } } finish { diffuse 0 ambient rgb <1,.9,.7> } translate y scale 4 translate -y*1.2 } plane { y, -1 pigment { checker rgb 0, rgb .3 scale 1 } finish { ambient rgb 1 } } no_image no_shadow hollow on } light_source { <-1,2,-3> rgb 1 } camera { right x*image_width/image_height up y direction z*2.8 location <-2,1,-3>*2 look_at -.125*y }