// POV-Ray 3.6 Scene File "povhouse3.pov" // created by Friedrich A. Lohmueller, 2004 // homepage: www.f-lohmueller.de //------------------------------------------------------------------------ #version 3.6; global_settings { assumed_gamma 1.0 } //------------------------------------------------------------------------ #include "colors.inc" #include "textures.inc" #include "glass.inc" //------------------------------------------------------------------------ #declare Camera_1 = camera { angle 12.5 location <20.0 , 20.0 ,-30.0> right x*image_width/image_height look_at <1.0 , 1.5 , 2.0> } camera{Camera_1} //------------------------------------------------------------------------ // sun ------------------------------------------------------------------- light_source{<-1500,2500,-2500> color White} // sky ------------------------------------------------------------------- sky_sphere{ pigment{ gradient <0,1,0> color_map{ [0 color rgb<1,1,1> ]//White [0.4 color rgb<0.14,0.14,0.56>]//~Navy [0.6 color rgb<0.14,0.14,0.56>]//~Navy [1.0 color rgb<1,1,1> ]//White } scale 2 } } // end of sky_sphere //------------------------------------------------------------------------ //------------------------------ the Axes -------------------------------- //------------------------------------------------------------------------ #macro Axis_( AxisLen, Dark_Texture,Light_Texture) union{ cylinder { <0,-AxisLen-1,0>,<0,AxisLen,0>,0.05 texture{checker texture{Dark_Texture } texture{Light_Texture} translate<0.1,0,0.1>} } cone{<0,AxisLen,0>,0.2,<0,AxisLen+0.7,0>,0 texture{Dark_Texture} } } // end of union #end // of macro "Axis()" //------------------------------------------------------------------------ #macro AxisXYZ( AxisLenX, AxisLenY, AxisLenZ, Tex_Dark, Tex_Light) //--------------------- drawing of 3 Axes -------------------------------- union{ #if (AxisLenX != 0) object { Axis_(AxisLenX, Tex_Dark, Tex_Light) rotate< 0,0,-90>}// x-Axis text { ttf "arial.ttf", "x", 0.15, 0 texture{Tex_Dark} scale 0.5 translate } #end // of #if #if (AxisLenY != 0) object { Axis_(AxisLenY, Tex_Dark, Tex_Light) rotate< 0,0, 0>}// y-Axis text { ttf "arial.ttf", "y", 0.15, 0 texture{Tex_Dark} scale 0.5 translate <-0.75,AxisLenY+0.50,-0.10>} #end // of #if #if (AxisLenZ != 0) object { Axis_(AxisLenZ, Tex_Dark, Tex_Light) rotate<90,0, 0>}// z-Axis text { ttf "arial.ttf", "z", 0.15, 0 texture{Tex_Dark} scale 0.5 translate <-0.75,0.2,AxisLenZ+0.10>} #end // of #if } // end of union #end// of macro "AxisXYZ( ... )" //------------------------------------------------------------------------ #declare Texture_A_Dark = texture { pigment{color rgb<1,0.45,0>} finish {ambient 0.15 diffuse 0.85 phong 1} } #declare Texture_A_Light = texture { pigment{color rgb<1,1,1>} finish {ambient 0.15 diffuse 0.85 phong 1} } object{ AxisXYZ( 4.5, 4.5, 11, Texture_A_Dark, Texture_A_Light) no_shadow} //-------------------------------------------------- end of coordinate axes // ground ----------------------------------------------------------------- //---------------------------------<<< settings of squered plane dimensions #declare RasterScale = 1.0; #declare RasterHalfLine = 0.025; #declare RasterHalfLineZ = 0.025; //------------------------------------------------------------------------- #macro Raster(RScale, HLine) pigment{ gradient x scale RScale color_map{[0.000 color rgbt<1,1,1,0>*0.6] [0+HLine color rgbt<1,1,1,0>*0.6] [0+HLine color rgbt<1,1,1,1>] [1-HLine color rgbt<1,1,1,1>] [1-HLine color rgbt<1,1,1,0>*0.6] [1.000 color rgbt<1,1,1,0>*0.6]} } finish { ambient 0.15 diffuse 0.85} #end// of Raster(RScale, HLine)-macro //------------------------------------------------------------------------- plane { <0,1,0>, 0 // plane with layered textures texture { pigment{color White*1.1} finish {ambient 0.45 diffuse 0.85}} texture { Raster(RasterScale,RasterHalfLine ) rotate<0,0,0> } texture { Raster(RasterScale,RasterHalfLineZ) rotate<0,90,0>} rotate<0,0,0> } //------------------------------------------------ end of squered plane XZ //-------------------------------------------------------------------------- //---------------------------- objects in scene ---------------------------- //-------------------------------------------------------------------------- #declare Hx = 2.00; #declare Hy = 3.50; #declare Hz = 4.00; #declare Roof_Angle = 38; #declare Wall_D = 0.20 ;// the thickness of the Wall #declare Roof_D = 0.10; // the thickness of the roof #declare Roof_O = 0.20; // overhang #declare Roof_L = Hx+0.80;// try it !!! // ---------------------------------------------------- Window_Positions // front positions #declare Window_Positon_1f = <-Hx/2,0,Wall_D/3>; #declare Window_Positon_2f = < Hx/2,0,Wall_D/3>; // backside positions #declare Window_Positon_1b = <-Hx/2,0,Hz-Wall_D/3>; #declare Window_Positon_2b = < Hx/2,0,Hz-Wall_D/3>; // right side positions #declare Window_Positon_1r = < Hx-Wall_D/3,0,3*Hz/4>; #declare Window_Positon_2r = < Hx-Wall_D/3,0, Hz/4>; // left side positions #declare Window_Positon_1l = <-Hx+Wall_D/3,0,3*Hz/4>; #declare Window_Positon_2l = <-Hx+Wall_D/3,0, Hz/4>; // ------------------------------------------------- end of Window_Positions #declare Wall_Texture_1 = texture { pigment{color White*1.1} normal {bumps 0.5 scale 0.005} finish {ambient 0.15 diffuse 0.85 phong 1} } // end of texture #declare Wall_Texture_2 = texture { pigment{color White*1.1} finish {ambient 0.15 diffuse 0.85 phong 1} } // end of texture #declare Roof_Texture = // layered texture!!! texture { pigment{color Scarlet*1.3} normal {gradient z scallop_wave scale<1,1,0.15>} finish {ambient 0.15 diffuse 0.85 phong 1} } // end of texture texture { pigment{ gradient x color_map{[0.00 color Clear] [0.90 color Clear] [0.95 color White*0.1] [1.00 color White*0.1]} scale 0.25} finish {ambient 0.15 diffuse 0.85 phong 1} } // end of texture //-------------------------------------------------------- //--------------------- Window ----------- #declare Window_Texture_1 = texture{pigment{color White*1.2} finish {ambient 0.1 diffuse 0.9}} #declare Window_Texture_2 = texture{pigment{color White} finish {ambient 0.1 diffuse 0.9}} //----------------------------------------- #declare Window = union{ difference{ box{<-0.50,0.80,-0.02>,< 0.50,1.80,0.02>} box{<-0.45,0.85,-0.03>,<-0.03,1.27,0.03>} box{< 0.03,0.85,-0.03>,< 0.45,1.27,0.03>} box{<-0.45,1.33,-0.03>,<-0.03,1.75,0.03>} box{< 0.03,1.33,-0.03>,< 0.45,1.75,0.03>} texture{Window_Texture_1} } // ---end of difference box{<-0.49,0.81,0.0>,< 0.49,1.79,0.001> texture{T_Glass3}} // no interior!!! } // ---end of union #declare Window_Hole = //symmetric!!! box{<-0.50,0.80,-0.50>,< 0.50,1.80,0.50> texture{Window_Texture_2}} //--------- end of window definition ------- #declare Door = union{ difference{ box{<-0.50,0.01,-0.02>,< 0.50,1.80,0.02>} box{<-0.45,0.85,-0.03>,<-0.03,1.27,0.03>} box{< 0.03,0.85,-0.03>,< 0.45,1.27,0.03>} box{<-0.45,1.33,-0.03>,<-0.03,1.75,0.03>} box{< 0.03,1.33,-0.03>,< 0.45,1.75,0.03>} texture{Window_Texture_1} } // ---end of difference box{<-0.49,0.81,0.0>,< 0.49,1.79,0.001> texture{T_Glass3}} // no interior!!! } // ---end of union #declare Door_Hole = //symmetric!!! box{<-0.50,0.01,-0.50>,< 0.50,1.80,0.50> texture{Window_Texture_2}} //--------- end of window definition ------- // the walls caved out ----------------------- the Walls difference{ box { <-Hx,0,0>,< Hx,Hy,Hz> texture {Wall_Texture_1} // no_shadow } // end of box --------- plane{ <0,-1,0>,0 texture {Wall_Texture_1} rotate<0,0,Roof_Angle> translate<0,Hy,0> } plane{ <0,-1,0>,0 texture {Wall_Texture_1} rotate<0,0,-Roof_Angle> translate<0,Hy,0> } // inside caved out box { <-Hx+Wall_D,0.10,Wall_D>, texture {Wall_Texture_2} } // subtract window holes object{ Door_Hole translate Window_Positon_1f} object{ Window_Hole translate Window_Positon_2f} object{ Window_Hole translate Window_Positon_1r} object{ Window_Hole translate Window_Positon_2r} object{ Window_Hole translate Window_Positon_1l} object{ Window_Hole translate Window_Positon_2l} object{ Window_Hole translate Window_Positon_1b} object{ Window_Hole translate Window_Positon_2b} }// end of intersection ------------------------- end of Walls // the Roof box { < -Roof_L, 0.00, -Roof_O>,< Roof_D/2, Roof_D, Hz+Roof_O> texture {Roof_Texture translate<-0.05,0,0>} rotate<0,0, Roof_Angle> translate<0,Hy,0> } box { < -Roof_L, 0.00, -Roof_O>,< Roof_D/2, Roof_D, Hz+Roof_O> texture {Roof_Texture translate<-0.05,0,0>} rotate<0,0, Roof_Angle> translate<0,Hy,0> scale<-1,1,1> } //------------------------------------------------- end of Roof //----------------------------------------------- Windows object{ Door translate Window_Positon_1f} object{ Window translate Window_Positon_2f} object{ Window rotate<0,180,0> translate Window_Positon_1b} object{ Window rotate<0,180,0> translate Window_Positon_2b} object{ Window rotate<0,-90,0> translate Window_Positon_1r} object{ Window rotate<0,-90,0> translate Window_Positon_2r} object{ Window rotate<0, 90,0> translate Window_Positon_1l} object{ Window rotate<0, 90,0> translate Window_Positon_2l} //--------------------------------------------------------- end