// Persistence of Vision Ray Tracer Scene Description File // File:new_bong.pov // Vers: 3.1 // Desc:a bong // Date:06/01/00 // Auth:ArfGrafix // ==== Standard POV-Ray Includes ==== #include "colors.inc" // Standard Color definitions #include "textures.inc" // Standard Texture definitions #include "metals.inc" // Standard Metal definitions #include "glass.inc" background { color rgb<1,1,1> } // create a regular point light source light_source { <0, 160, -40> color rgb <1,1,1>*3 spotlight radius 15 falloff 20 tightness 10 point_at <0, 0, 0> media_interaction off } /* media { intervals 40 scattering {1, rgb 0.02} samples 1, 10 confidence 0.9999 variance 1/1000 ratio 0.9 } */ camera { location <0.0 , 60 ,-50> look_at <0.0 , 0.0 , 0.0> rotate 0} background {rgb <1,1,1>} // plane{ y, -8 pigment{ checker Black, White scale 20}} #declare bong_stem = lathe { linear_spline 7, <2,0>,<2,7>,<3,9>,<3.5,9>,<2.5,7>,<2.5,0>,<2,0> pigment {Red} sturm} object { bong_stem scale <1,3.5,1> scale 0.5 texture{T_Chrome_1A}rotate <0,0,-30> translate <6,-1.5,0>} #declare globe_1 = difference {//makes hollow sphere sphere {0,2} sphere {0,1.9 /*inverse*/}scale 1.5} #declare globe_2 = object { globe_1 scale <1,1.5,1> } #declare globe_3 = object { globe_2 scale <1,1.5,1> scale 0.65 } #declare merge_globes = union { merge { object{ globe_1 } object{ globe_2 translate 4.25*y} object{ globe_3 translate 8*y } } } // object { merge_globes pigment { color rgb <1,0,0> } scale 4 } #declare slicing_plane = plane { -z,0 pigment { color rgbt <1,0,0,.1> } } #declare cross_section = intersection { object { merge_globes scale 3.5 } object { slicing_plane } } object{ cross_section }