// Persistence Of Vision Ray Tracer Scene Description File // ------------------------------------------------------- // File: @(#)camera_view_desk.pov // Description: camera_view sample scene // Features demonstrated: camera_view // Creation Date: $ 1 Aug 2004, 16:55:14 $ // Last modified: $ 1 Aug 2004, 22:36:49 $ // Author: Tom Price, modified by Dan Farmer // Modified for MegaPOV 1.1 by René & Yvo Smellenbergh // // @@ This scene demonstrates the use of camera_view. // @@ The Original scene needed a 3-frame animation to complete // @@ With the aid of camera_view only one pass is needed! // // Render instructions: // -------------------- // // -w800 -h600 +a0.3 -j #version unofficial MegaPOV 1.1; global_settings { assumed_gamma 2.2 max_trace_level 5 } #include "shapes.inc" #include "colors.inc" #include "textures.inc" #include "woods.inc" #include "glass.inc" #include "metals.inc" #declare This_Brass = texture { T_Brass_4B } #declare RedPencil = union { cylinder {0, y*30, 0.5 finish { crand 0.05 ambient 0.3 diffuse 0.7 } pigment { Red } } cylinder {0, y*32, 0.5 finish { crand 0.05 ambient 0.3 diffuse 0.7 } pigment { Tan } } } #declare GreenPencil = union { cylinder {0, y*30, 0.5 finish { crand 0.05 ambient 0.3 diffuse 0.7 } pigment { Green } } cylinder {0, y*32, 0.5 finish { crand 0.05 ambient 0.3 diffuse 0.7 } pigment { Tan } } } #declare BluePencil = union { cylinder {0, y*30, 0.5 finish { crand 0.05 ambient 0.3 diffuse 0.7 } pigment { Blue } } cylinder {0, y*32, 0.5 finish { crand 0.05 ambient 0.3 diffuse 0.7 } pigment { Tan } } } #declare Back_Wall = plane { z, 200.0 hollow on finish { crand 0.05 ambient 0.3 diffuse 0.7 } pigment { LightGray } } #declare Ceiling = plane { y, 500.0 hollow on finish { ambient 0.3 diffuse 0.7 } pigment { White } } #declare Desk_Top = box { <-125, -2, -100> <125, 2, 100> translate -20.0*y // top surface at -18*y texture { // T_Wood30 pigment { P_WoodGrain6A color_map { M_Wood6A }} #if (clock=4) finish { reflection 0.2 } #end rotate y*90 translate z*30 rotate z*5 scale 5 } } #declare Blotter = union { triangle { <0.0, 0.0, 0.0> <8.5, 0.0, 0.0> <0.0, 0.0, -11.0> } triangle { <0.0, 0.0, -11.0> <8.5, 0.0, -11.0> <8.5, 0.0, 0.0> } scale <4.0, 1.0, 4.0> rotate -30.0*y translate <-20.0, -17.9999, -40.0> finish { crand 0.04 ambient 0.15 diffuse 0.5 } pigment { colour red 0.5 green 0.5 blue 0.3 } } #declare Paperweight= intersection { sphere { <0.0, -5.0, 0.0>, 10.0 } disc { 0, -y, 10.1 } translate <0.0, -17.9998, -35.0> texture { T_Green_Glass } } //The Picture itself #declare Picture = union { box { 0, 1 finish { ambient 0.05 diffuse 0.9 } pigment { camera_view { location <0.0, 40.0, -150.0> up <0.0, 1.0, 0.0> right <4/3, 0.0, 0.0> look_at <0.0, 0.0, 0.0> } } scale <40.0, 30.0, 1.0> translate <0.0, 0.0, 0.0> } // The picture frame union { cylinder {-y,31*y,1 translate 41*x } cylinder {-y,31*y,1 translate -1*x } cylinder {-x,41*x,1 translate 31*y } cylinder {-x,41*x,1 translate -1*y } sphere { <-1.0, -1.0, 0.0>, 1.0 } sphere { <-1.0, 31.0, 0.0>, 1.0 } sphere { <41.0, -1.0, 0.0>, 1.0 } sphere { <41.0, 31.0, 0.0>, 1.0 } texture { This_Brass } } scale 1.5 rotate <10.0, -35.0, 0.0> translate <-65.0, -15.0, -25.0> } #declare Pencil_Holder = union { intersection { object { Cylinder_Y scale <5.0, 1.0, 5.0> } object { Cylinder_Y scale <4.8, 1.0, 4.8> inverse } plane { y, 0.0 inverse } plane { y, 15.0 rotate -45*x } texture { This_Brass } } object { RedPencil rotate -2*z translate <1.0, 0.0, 1.0> } object { GreenPencil rotate 2.0*z translate <-1.0, 3.0, 0.0> } object { BluePencil rotate <-2.0, 0.0, 3.0> translate <0.0, -2.0, -1.0> } rotate 45*y translate <70.0, -18.0, -20.0> } #declare Lamp = union { object { cylinder { -y*18, y*40, 3 } texture { This_Brass } } cylinder { -y*2, y*2, 25 translate <0.0, -16.0, -5.0> texture { This_Brass normal { bumps 0.1 } } } intersection { object { Cylinder_X scale <1.0, 10.0, 10.0> } object { Cylinder_X scale <1.0, 9.95, 9.95> inverse } plane { y, 0.0 inverse } plane { x, -30.0 inverse } plane { x, 30.0 } translate <0.0, 35.0, -13.0> finish { Shiny crand 0.05 ambient 0.5 diffuse 0.5 reflection 0.3 brilliance 4.0 } pigment { DarkGreen } } union { intersection { sphere { <-30.0, 35.0, -13.0>, 10.0 } sphere { <-30.0, 35.0, -13.0>, 9.95 inverse } plane { y, 35.0 inverse } plane { x, -30.0 } } intersection { plane { y, 35.0 inverse } plane { x, 30.0 inverse } sphere { <30.0, 35.0, -13.0>, 10.0 } sphere { <30.0, 35.0, -13.0>, 9.95 inverse } } texture { This_Brass } } rotate 35*y translate <50.0, 0.0, 30.0> } //The fluorescent tube inside the lamp #declare Lamp_Light_Source = light_source { <0, 0, 0> color White looks_like { cylinder { -x*25, x*25, 2 pigment { White filter 0 } finish { ambient 1 diffuse 0 } } } translate <0.0, 43.0, -10.0> rotate 35*y translate <50.0, 0.0, 30.0> } camera { location <0.0, 40.0, -150.0> up <0.0, 1.0, 0.0> right <4/3, 0.0, 0.0> look_at <0.0, 0.0, 0.0> } light_source { <20.0, 100.0, -200.0> colour White } object { Back_Wall } object { Ceiling } object { Desk_Top } object { Blotter } object { Paperweight } object { Lamp } object { Lamp_Light_Source } object { Picture } object { Pencil_Holder }