// Lamp Shade scene file suitable for Pov 3.0x or later // By Ken Tyler 04-28-1999 contact: tylereng@pacbell.net // Released free to the public domain. Use as you see fit // without restriction from me of any kind. camera{location<0,1,-13.5>look_at<0,1,0>} light_source{<12,10,-5>rgb 1} // shade One - deep tapered flutes #declare Cn1 = cone { <0,-2,0>,0.35,<0,2,0>,0.2 rotate 35*z } #declare Diff1 = union { #declare A = 0; #while (A < 45) object { Cn1 translate<3.2,2,0>rotate y*8*A } #declare A = A+1; #end } #declare Shade1 = difference { intersection { object { Diff1 } object { Diff1 scale<.999,1.01,.999> }} object { Diff1 scale<1,1.01,1> } bounded_by { box {-1,1 scale<3.6,1.85,3.6>translate y*1.85} } pigment { rgb<1,1,1> } finish { ambient .3 diffuse .35 } } // shade 2 flatter flutes less angle to side of shade #declare Cn2 = cone {<0,-2,0>,.35,<0,2.5,0>,.2 scale<.5,1,1>rotate 30*z} #declare Diff2 = union { #declare A = 0; #while (A < 45) object { Cn2 translate<3.2,2,0>rotate y*8*A} #declare A = A+1; #end } #declare Shade2 = difference { intersection { object { Diff2 } object { Diff2 scale<.999,1.01,.999> }} object { Diff2 scale<1,1.01,1> } bounded_by { box { -1,1 scale<3.6,1.975,3.6>translate y*1.975 } } pigment { rgb<1,1,1> } finish { ambient .3 diffuse .35 } } // shade 3 flutes rounded on outside renders fastest #declare Cn3 = cone { <0,-2,0>,0.35,<0,2.5,0>,0.2 scale<0.5,1,1> clipped_by { plane {-x,0 } } rotate 30*z } #declare Diff3 = union { #declare A = 0; #while (A < 45) object { Cn3 translate<3.2,2,0>rotate y*8*A} #declare A = A+1; #end } #declare Shade3 = object { Diff3 pigment { rgb 1 } finish { ambient .3 diffuse .5 } } // object { Shade1 } // object { Shade2 } // object { Shade3 }