Added more samples for the POV-Ray Scene Description Language

This commit is contained in:
Christoph Lipka
2016-01-10 18:40:29 +01:00
parent 7b30240a7f
commit b593a8ae67
11 changed files with 13816 additions and 0 deletions

207
samples/POV-Ray SDL/balcony.pov Executable file
View File

@@ -0,0 +1,207 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Scene Description File
// File: balcony.pov
// Desc: Povray demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
//
// ***********************************************************************
//
// -------------------- 'balcony' demonstration scene --------------------
//
// written July-August 2001 by Christoph Hormann <chris_hormann@gmx.de>
//
// demonstrates use of various new or changed features:
//
// - isosurface (for the rail columns)
// - mesh2 object (table cloth)
// - uv-mapping (table cloth)
// - pattern image type (background heightfield)
// - slope pattern (background heightfield)
// - variable reflection (water & glass)
// - metallic reflection
// - conserve_energy
// - function pattern (water)
// - fading interior (water, drink)
// - 'circular' and 'orient' area_light
// - radiosity
// - photons (objects on the table)
//
// ***********************************************************************
//
// Command line options:
//
// -w240 -h320
// -w480 -h640 +a0.3
// -w600 -h800 +a0.3
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#version 3.6;
#include "functions.inc"
#include "colors.inc"
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#declare AreaLight=on;
#declare Radiosity=on;
#declare Photons=on;
#declare TestLight=off;
#declare show_Fog=true;
#declare show_Water=true;
#declare show_Terrain=true;
#declare show_Building=true;
#declare show_Table=true;
#declare show_TableCloth=true;
#declare show_Chair=true;
#declare show_Table_Stuff=true;
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
global_settings{
max_trace_level 15
assumed_gamma 1
#if (Radiosity=on)
radiosity{
pretrace_start 0.08
pretrace_end 0.01
count 130
nearest_count 5
error_bound 0.3
recursion_limit 1
low_error_factor 0.5
gray_threshold 0.0
minimum_reuse 0.015
brightness 1.0
adc_bailout 0.01/2
normal on
}
#end
#if (Photons=on)
photons {
spacing 0.002
}
#end
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
// This scene uses a non-standard camera set-up.
// (See CAMERA in the included documentation for details.)
// If you are new to POV-Ray, you might want to try a different demo scene.
camera {
location <0.5, 0.5, 1.2>
direction y
sky z
up z
right x*image_width/image_height // keep propotions with any aspect ratio
look_at <5, 4.3, 0.9>
angle 36
}
/*
camera { // table detail camera
location <1.5, 1.5, 1.0>
direction y
sky z
up z
right x*image_width/image_height // keep propotions with any aspect ratio
look_at <3.3,2.52,0.5>
angle 30
}
*/
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (TestLight=on)
light_source {
<2, 2, 2>
color rgb 0.7
}
#end
light_source {
<3.0, -2.5, 2.6>*10000
color rgb <3.43,2.87,1.95>
#if (AreaLight=on)
area_light 400*x 400*y 4,4
jitter
circular
orient
#end
photons {
reflection on
refraction on
}
}
#if (show_Fog)
fog{
fog_type 2
fog_alt 1.2
fog_offset 0
color rgbt <0.60, 0.68, 0.82, 0.0>
distance 700
up z
}
#end
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#include "sky.inc"
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (show_Water)
#include "water.inc"
#end
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (show_Building)
#include "building.inc"
#end
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (show_Terrain)
#include "terrain.inc"
#end
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (show_Table)
#include "table.inc"
#end
#if (show_TableCloth)
#include "table_cloth.inc"
#end
#if (show_Table_Stuff)
#include "table_stuff.inc"
#end
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (show_Chair)
#include "chair.inc"
#end
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

117
samples/POV-Ray SDL/bglass.inc Executable file
View File

@@ -0,0 +1,117 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Include File
// File: bglass.inc
// Desc: drinking glass for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#declare Mat_Glass=
material {
texture {
pigment { color rgbt 1 }
finish {
ambient 0.0
diffuse 0.1
specular 0.5
roughness 0.05
reflection {
0.0, 1.0
fresnel on
}
conserve_energy
}
}
interior {
ior 1.5
fade_distance 0.1
fade_power 1001
fade_color <0.4,0.4,0.4>
}
}
#declare Mat_Liquid=
material {
texture {
pigment { color rgbt 1 }
finish {
ambient 0.0
diffuse 0.1
specular 0.5
roughness 0.01
reflection {
0.0, 1.0
fresnel on
}
conserve_energy
}
}
interior {
ior 1.3
fade_distance 0.03
fade_power 1001
fade_color <0.8,0.3,0.4>
}
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#include "shapes.inc"
#local Content_Shape=
merge {
cylinder {
0*z, 5*z, 3.0
}
object { Round_Cylinder_Merge (2*z, -3*z, 3.0, 0.25) }
material { Mat_Liquid }
}
#declare Glass=
union {
merge {
difference {
cylinder {
0.01*z, 14*z, 3.2
}
cylinder {
0*z, 10*z, 3.0
translate 4.6*z
}
object { Round_Cylinder_Merge (2*z, -3*z, 3.0, 0.25) translate 4.6*z }
}
torus {
3.1, 0.1
rotate 90*x
translate 14*z
}
material { Mat_Glass }
}
object { Content_Shape scale 0.99 translate 4.6*z }
scale 1.1
scale 0.01
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

212
samples/POV-Ray SDL/building.inc Executable file
View File

@@ -0,0 +1,212 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Include File
// File: building.inc
// Desc: building for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#declare Tex_Stone=
texture {
pigment {
agate
color_map {
[0.7 color rgb <0.6,0.6,0.6> ]
[1.0 color rgb 0.46 ]
}
warp { turbulence <0.7,0.4,0.4> }
scale <0.3,1.2,1.2>*0.25
rotate -60*y
rotate 70*z
}
finish {
ambient 0.0//0.1
diffuse 0.5
specular 0.15
}
normal {
granite 0.2
warp {turbulence 1}
scale 0.1
}
}
#declare Tex_Floor_A=
texture {
pigment {
color rgb <0.6,0.6,0.6>
}
finish {
ambient 0.0
diffuse 0.5
specular 0.15
}
normal {
granite 0.2
warp {turbulence 1}
scale 0.25
translate 2
}
}
#declare Tex_Floor_B=
texture {
pigment {
color rgb <0.18,0.18,0.22>
}
finish {
ambient 0.0
diffuse 0.5
specular 0.15
}
normal {
granite 0.2
warp {turbulence 1}
scale 0.25
}
}
#declare Tex_Floor=
texture {
checker
texture { Tex_Floor_A },
texture { Tex_Floor_B }
scale 0.4
rotate 45*z
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#include "shapes.inc"
#declare fn_Rad=
function {
sin(pow(abs(z*0.4),1.8))+0.4
}
#declare Small_Column_part1=
isosurface {
function { min(sqrt( x*x + y*y ) - fn_Rad(x, y, z), sqrt( x*x + y*y + pow(abs(z*2),1.4)) - 1.0) }
max_gradient 1.8
//eval
accuracy 0.001
contained_by { box { -4, 4 } }
translate 4*z
scale 6
texture { Tex_Stone }
}
#declare Small_Column=
union {
object { Small_Column_part1 translate 3*z }
object { Round_Cylinder_Union (0, 3*z, 10, 1) }
object { Round_Cylinder_Union (51*z, 54*z, 10, 1) }
scale 0.01
translate 0.1*z
texture { Tex_Stone }
}
#declare Large_Column=
union {
object { Round_Cylinder_Merge (0.7*z, 0.8*z, 0.22, 0.02) }
cylinder { 0.75*z, 3*z, 0.2 }
object { Round_Box_Union (<-0.23,-0.23,-0.1>, <0.23,0.23,0.15>, 0.02) }
object { Round_Box_Union (<-0.20,-0.20,0.00>, <0.20,0.20,0.70>, 0.02) }
object { Round_Box_Union (<-0.23,-0.23,0.58>, <0.23,0.23,0.70>, 0.02) }
object { Round_Box_Union (<-0.26,-0.26,0.64>, <0.26,0.26,0.74>, 0.02) }
torus { 0.2, 0.06 rotate 90*x translate 2.74*z }
object { Round_Box_Union (<-0.26,-0.26,2.80>, <0.26,0.26,2.88>, 0.01) }
texture { Tex_Stone }
}
#declare Balustrade=
union {
object { Round_Box_Union (<0.0,-0.15,0>, <5,0.15,0.1>, 0.02) }
object { Round_Box_Union (<0.0,-0.15,0.64>, <5,0.15,0.74>, 0.02) }
#declare Cnt=0;
#while (Cnt<10)
object { Small_Column translate(Cnt*0.5+0.6)*x }
#declare Cnt=Cnt+1;
#end
texture { Tex_Stone }
}
#declare Walls=
union {
box { <-0.5,-0.5,-1>, <-2,5.5,3.2> }
box { <-0.5,-0.5,-1>, <5.5,-2,3.2> }
texture { Tex_Stone }
}
#declare Ceiling_Segment=
union {
box { <-0.20,-0.20,2.94>, <0.20,0.20,2.98> }
box { <-0.14,-0.14,2.94>, <0.14,0.14,3.01> }
}
#declare Ceiling=
union {
box { <5.6,5.6,3.04>, <-2,-2,3.5> }
union {
object { Round_Box_Union (<0.0,-0.26,3.1>, <6,0.26,2.88>, 0.02) rotate 180*z }
object { Round_Box_Union (<0.0,-0.26,3.1>, <6,0.26,2.88>, 0.02) rotate -90*z }
translate <5,5,0>
}
difference {
box { <5.0,5.0,2.95>, <-2,-2,3.5> }
object { Ceiling_Segment translate <4.44,4.44,0> }
object { Ceiling_Segment translate <4.44,3.94,0> }
object { Ceiling_Segment translate <3.94,4.44,0> }
object { Ceiling_Segment translate <3.94,3.94,0> }
object { Ceiling_Segment translate <4.44,3.44,0> }
object { Ceiling_Segment translate <3.44,4.44,0> }
object { Ceiling_Segment translate <3.94,3.44,0> }
object { Ceiling_Segment translate <3.44,3.94,0> }
object { Ceiling_Segment translate <4.44,2.94,0> }
object { Ceiling_Segment translate <2.94,4.44,0> }
}
texture { Tex_Stone }
}
#declare Base=
union {
box { <5.4,5.4,0>, <0,0,-1> texture { Tex_Floor } }
box { <6,6,-1>, <0,0,-2> }
texture { Tex_Stone }
}
object { Balustrade rotate 180*z translate <5,5,0> }
object { Balustrade rotate -90*z translate <5,5,0> }
object { Large_Column translate <5,5,0> }
object { Base }
object { Walls }
object { Ceiling }
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

382
samples/POV-Ray SDL/chair.inc Executable file
View File

@@ -0,0 +1,382 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Include File
// File: chair.inc
// Desc: chair for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#declare Tex_Table_Foot=
texture {
pigment {
color rgb 0.4
}
finish {
ambient 0.0
diffuse 0.3
specular 0.4
roughness 0.01
metallic
reflection {
0.8
metallic
}
}
}
#declare Tex_Table_Foot_Bottom=
texture {
pigment {
color rgb 0.2
}
finish {
ambient 0.0
diffuse 0.3
specular 0.4
roughness 0.02
}
}
#declare Tex_Dark_Wood=
texture {
pigment {
bozo
color_map {
[0.3 color rgb <0.0,0.0,0.16> ]
[0.5 color rgb <0.0,0.0,0.08> ]
[0.7 color rgb <0.0,0.0,0.0> ]
}
scale <4,1,1>*0.036
}
finish {
ambient 0.09
diffuse 0.3
specular 0.5
roughness 0.025
reflection {
0.15
metallic
}
}
normal {
granite 0.1
scale 0.03
accuracy 0.007
}
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#include "shapes.inc"
#local Chair_Tube_Rad=0.01;
#local Chair_Tube_Curve_Rad=0.045;
#local Chair_Leg_Angle=7;
#local Chair_Leg_AngleA=4;
#local Chair_Leg_Depth=0.13;
#local Chair_Plate_Curve_Rad=0.03;
#local Chair_Plate_Thickness=0.008;
#local Chair_Plate_Width=0.48;
#local Chair_Plate_UWidth=0.22;
#local Chair_Plate_Height=0.45;
#local Chair_Plate_UAngle=5;
#local Chair_Plate_Depth=0.26;
#local Chair_Leg=
union {
intersection {
torus { Chair_Tube_Curve_Rad, Chair_Tube_Rad }
plane { x, 0 }
plane { -x, 0 rotate (-90+Chair_Leg_Angle)*y }
}
cylinder {
<-Chair_Tube_Curve_Rad,0,0>,
<-Chair_Tube_Curve_Rad,0,-Chair_Plate_Height+0.01>, Chair_Tube_Rad
rotate Chair_Leg_Angle*y
}
cylinder {
<0,0,Chair_Tube_Curve_Rad>,
<Chair_Leg_Depth,0,Chair_Tube_Curve_Rad>, Chair_Tube_Rad
}
object { Round_Cylinder_Merge (
<-Chair_Tube_Curve_Rad,0,-Chair_Plate_Height-0.003>,
<-Chair_Tube_Curve_Rad,0,-Chair_Plate_Height+0.025>, Chair_Tube_Rad+0.001, 0.005)
rotate Chair_Leg_Angle*y
texture { Tex_Table_Foot_Bottom }
}
translate -Chair_Leg_Depth*x
translate Chair_Plate_Height*cos(radians(Chair_Leg_Angle))*z
}
#macro Chair_Back(Rotate)
union {
intersection {
torus { Chair_Tube_Curve_Rad, Chair_Tube_Rad }
plane { x, 0 }
plane { z, 0 }
translate <-Chair_Leg_Depth, 0.0,Chair_Tube_Curve_Rad*2>
}
cylinder {
<-0.08, 0.0,Chair_Tube_Curve_Rad>,
< 0.05, 0.0,Chair_Tube_Curve_Rad>, Chair_Tube_Rad
}
intersection {
torus { 4, Chair_Tube_Rad }
plane { z, 0.4 }
plane { -z, 0 }
translate <-4-Chair_Leg_Depth-Chair_Tube_Curve_Rad, 0.0,Chair_Tube_Curve_Rad*2>
}
translate -Chair_Tube_Curve_Rad*z
rotate 3*y
rotate Rotate*x
translate Chair_Tube_Curve_Rad*z
translate Chair_Plate_Height*cos(radians(Chair_Leg_Angle))*z
}
#end
#local Chair_Base=
union {
union {
object { Chair_Back(-0.25) translate Chair_Tube_Rad*2*y }
object { Chair_Leg }
object { Chair_Leg rotate 180*z }
rotate -Chair_Leg_AngleA*x
translate -0.23*y
}
union {
object { Chair_Back( 0.25) translate -Chair_Tube_Rad*2*y }
object { Chair_Leg }
object { Chair_Leg rotate 180*z }
rotate Chair_Leg_AngleA*x
translate 0.23*y
}
texture { Tex_Table_Foot }
}
#local Chair_Plate=
union {
intersection {
merge {
torus { Chair_Plate_Curve_Rad, Chair_Plate_Thickness translate (Chair_Plate_Width/2)*y }
torus { Chair_Plate_Curve_Rad, Chair_Plate_Thickness translate -(Chair_Plate_Width/2)*y }
difference {
cylinder {
-(Chair_Plate_Width/2)*y, (Chair_Plate_Width/2)*y,
Chair_Plate_Curve_Rad+Chair_Plate_Thickness
}
cylinder {
-(Chair_Plate_Width/1.8)*y, (Chair_Plate_Width/1.8)*y,
Chair_Plate_Curve_Rad-Chair_Plate_Thickness
}
}
}
plane { -z, 0 rotate -20*y}
plane { -x, 0 }
}
merge {
cylinder {
<0.0, -Chair_Plate_Width/2, Chair_Plate_Curve_Rad>
<0.0, Chair_Plate_Width/2, Chair_Plate_Curve_Rad>,
Chair_Plate_Thickness
}
sphere { <0.0, -Chair_Plate_Width/2, Chair_Plate_Curve_Rad>, Chair_Plate_Thickness }
sphere { <0.0, Chair_Plate_Width/2, Chair_Plate_Curve_Rad>, Chair_Plate_Thickness }
rotate 70*y
}
box {
< 0.00, -Chair_Plate_Width/2, Chair_Plate_Curve_Rad-Chair_Plate_Thickness>,
<-Chair_Plate_Depth, Chair_Plate_Width/2, Chair_Plate_Curve_Rad+Chair_Plate_Thickness>
}
cylinder {
< 0.00, -Chair_Plate_Width/2, Chair_Plate_Curve_Rad>
<-Chair_Plate_Depth, -Chair_Plate_Width/2, Chair_Plate_Curve_Rad>,
Chair_Plate_Thickness
}
cylinder {
< 0.00, Chair_Plate_Width/2, Chair_Plate_Curve_Rad>
<-Chair_Plate_Depth, Chair_Plate_Width/2, Chair_Plate_Curve_Rad>,
Chair_Plate_Thickness
}
box {
<-Chair_Plate_Depth, -Chair_Plate_Width/2+Chair_Plate_Curve_Rad,
Chair_Plate_Curve_Rad-Chair_Plate_Thickness>,
<-Chair_Plate_Depth-Chair_Plate_Curve_Rad, Chair_Plate_Width/2-Chair_Plate_Curve_Rad,
Chair_Plate_Curve_Rad+Chair_Plate_Thickness>
}
cylinder {
<-Chair_Plate_Depth, Chair_Plate_Width/2-Chair_Plate_Curve_Rad,
Chair_Plate_Curve_Rad-Chair_Plate_Thickness>
<-Chair_Plate_Depth, Chair_Plate_Width/2-Chair_Plate_Curve_Rad,
Chair_Plate_Curve_Rad+Chair_Plate_Thickness>,
Chair_Plate_Curve_Rad
}
cylinder {
<-Chair_Plate_Depth, -Chair_Plate_Width/2+Chair_Plate_Curve_Rad,
Chair_Plate_Curve_Rad-Chair_Plate_Thickness>
<-Chair_Plate_Depth, -Chair_Plate_Width/2+Chair_Plate_Curve_Rad,
Chair_Plate_Curve_Rad+Chair_Plate_Thickness>,
Chair_Plate_Curve_Rad
}
torus {
Chair_Plate_Curve_Rad, Chair_Plate_Thickness
rotate 90*x
translate <-Chair_Plate_Depth,
-Chair_Plate_Width/2+Chair_Plate_Curve_Rad, Chair_Plate_Curve_Rad>
}
torus {
Chair_Plate_Curve_Rad, Chair_Plate_Thickness
rotate 90*x
translate <-Chair_Plate_Depth,
Chair_Plate_Width/2-Chair_Plate_Curve_Rad, Chair_Plate_Curve_Rad>
}
translate (Chair_Plate_Height+0.03)*z
translate 0.18*x
}
#local Chair_Back_Plate=
union {
intersection {
union {
intersection {
difference {
cylinder { <0.0, -0.30, 0.0>, <0.0, 0.30, 0.0>, 4+2*Chair_Plate_Thickness }
cylinder { <0.0, -0.40, 0.0>, <0.0, 0.40, 0.0>, 4 }
}
plane { y, Chair_Plate_UWidth rotate Chair_Plate_UAngle*x }
plane { -y, Chair_Plate_UWidth rotate -Chair_Plate_UAngle*x }
}
torus {
4+Chair_Plate_Thickness, Chair_Plate_Thickness
scale <1, 1, 1/cos(radians(Chair_Plate_UAngle))>
rotate Chair_Plate_UAngle*x
translate Chair_Plate_UWidth*y
}
torus {
4+Chair_Plate_Thickness, Chair_Plate_Thickness
scale <1, 1, 1/cos(radians(Chair_Plate_UAngle))>
rotate -Chair_Plate_UAngle*x
translate -Chair_Plate_UWidth*y
}
}
plane { z, 0 rotate -8*y }
plane { -z, 0 rotate -0.2*y }
}
intersection {
union {
cylinder {
<4+Chair_Plate_Thickness, 0.3, 0.0>,
<4+Chair_Plate_Thickness, -0.3, 0.0>,
Chair_Plate_Thickness
rotate -0.2*y
}
cylinder {
<4+Chair_Plate_Thickness, 0.3, 0.0>,
<4+Chair_Plate_Thickness, -0.3, 0.0>,
Chair_Plate_Thickness
rotate -8*y
}
}
plane { y, Chair_Plate_UWidth rotate Chair_Plate_UAngle*x }
plane { -y, Chair_Plate_UWidth rotate -Chair_Plate_UAngle*x }
}
sphere {
<4+Chair_Plate_Thickness, Chair_Plate_UWidth, 0.0>,
Chair_Plate_Thickness
rotate -0.2*y
}
sphere {
<4+Chair_Plate_Thickness, -Chair_Plate_UWidth, 0.0>,
Chair_Plate_Thickness
rotate -0.2*y
}
sphere {
<4+Chair_Plate_Thickness,
Chair_Plate_UWidth-4*sin(radians(Chair_Plate_UAngle))*sin(radians(8)), 0.0>,
Chair_Plate_Thickness
rotate -8*y
}
sphere {
<4+Chair_Plate_Thickness,
-Chair_Plate_UWidth+4*sin(radians(Chair_Plate_UAngle))*sin(radians(8)), 0.0>,
Chair_Plate_Thickness
rotate -8*y
}
translate <-4-Chair_Leg_Depth-Chair_Tube_Curve_Rad+Chair_Tube_Rad,
0.0, Chair_Tube_Curve_Rad*2>
translate -Chair_Tube_Curve_Rad*z
rotate 3*y
translate Chair_Tube_Curve_Rad*z
translate Chair_Plate_Height*cos(radians(Chair_Leg_Angle))*z
}
union {
object { Chair_Back_Plate texture { Tex_Dark_Wood rotate 90*y } }
object { Chair_Plate texture { Tex_Dark_Wood } }
object { Chair_Base }
scale 0.92
rotate -60*z
translate <2.68,3.35,0>
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

12217
samples/POV-Ray SDL/cloth.inc Executable file

File diff suppressed because it is too large Load Diff

91
samples/POV-Ray SDL/sky.inc Executable file
View File

@@ -0,0 +1,91 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Include File
// File: sky.inc
// Desc: sky for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#local P_Clouds=
pigment {
gradient z
pigment_map {
[ 0.0 color rgbt 1]
[ 0.1
bozo
color_map {
[0.0 color rgbt < 0.85, 0.88, 0.94, 0.0>]
[0.15 color rgbt < 0.91, 0.96, 0.99, 0.0>]
[0.35 color rgbt < 0.91, 0.96, 0.99, 1.0>]
}
turbulence 0.75
lambda 2.4
omega 0.6
octaves 8
scale <0.4,0.4,0.15>
]
[ 0.4
bozo
color_map {
[0.0 color rgbt < 0.85, 0.88, 0.94, 0.0>]
[0.15 color rgbt < 0.91, 0.96, 0.99, 0.0>]
[0.35 color rgbt < 0.91, 0.96, 0.99, 1.0>]
}
turbulence 0.75
lambda 2.4
omega 0.6
octaves 8
scale <0.4,0.4,0.15>
]
[ 0.65 color rgbt 1]
}
rotate 10*z
}
#local Tex_Sky =
texture {
pigment {
function { abs(z) }
color_map {
[0.0 color rgb < 0.640, 0.685, 0.800 >]
[0.3 color rgb < 0.400, 0.550, 0.900 >]
}
turbulence 0.05
}
finish {
diffuse 0
ambient 1
}
}
texture {
pigment { P_Clouds }
finish {
diffuse 0
ambient 1
}
}
sphere {
<0, 0, 0>, 1
texture { Tex_Sky }
scale<1000000, 1000000, 300000>
no_shadow
hollow on
photons{ collect off }
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

171
samples/POV-Ray SDL/table.inc Executable file
View File

@@ -0,0 +1,171 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Include File
// File: table.inc
// Desc: table for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#declare Tex_Table_Foot=
texture {
pigment {
color rgb 0.4
}
finish {
ambient 0.0
diffuse 0.3
specular 0.4
roughness 0.01
metallic
reflection {
0.8
metallic
}
}
}
#declare Tex_Table_Foot_Bottom=
texture {
pigment {
color rgb 0.2
}
finish {
ambient 0.0
diffuse 0.3
specular 0.4
roughness 0.02
}
}
#declare Tex_Dark_Wood=
texture {
pigment {
bozo
color_map {
[0.3 color rgb <0.0,0.0,0.16> ]
[0.5 color rgb <0.0,0.0,0.08> ]
[0.7 color rgb <0.0,0.0,0.0> ]
}
scale <4,1,1>*0.036
}
finish {
ambient 0.09
diffuse 0.3
specular 0.5
roughness 0.025
reflection {
0.15
metallic
}
}
normal {
granite 0.1
scale 0.03
accuracy 0.007
}
scale 0.5
rotate 90*y
}
#declare Tex_Dark_Wood2 =
texture {
pigment {
wood
color_map {
[ 0.0000 color rgb<0.6431, 0.3176, 0.0824> ]
[ 0.1000 color rgb<0.6196, 0.2824, 0.0588> ]
[ 0.2000 color rgb<0.7137, 0.3725, 0.1529> ]
[ 0.3000 color rgb<0.7529, 0.4157, 0.1922> ]
[ 0.4000 color rgb<0.8157, 0.4941, 0.2588> ]
[ 0.5000 color rgb<0.7686, 0.4745, 0.2196> ]
[ 0.6000 color rgb<0.8471, 0.5647, 0.2980> ]
[ 0.7000 color rgb<0.8627, 0.5843, 0.3137> ]
[ 0.8000 color rgb<0.8902, 0.6314, 0.3529> ]
[ 0.9000 color rgb<0.8627, 0.6118, 0.3294> ]
[ 1.0000 color rgb<0.8392, 0.5922, 0.3098> ]
}
turbulence <0.075, 0.075, 0.65>
scale <0.04, 0.04, 0.6>
scale 0.27
rotate 91*y
translate -0.1*z
}
finish {
ambient 0.0
diffuse 0.4
specular 0.3
roughness 0.025
reflection {
0.17
metallic
}
}
normal {
granite 0.015
scale <0.02, 0.02, 0.06>
rotate 91*y
accuracy 0.007
}
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#include "shapes.inc"
#declare Table_Height=0.66;
#declare Table=
union {
torus { 0.49, 0.01 sturm rotate 90*x translate z*(Table_Height-0.01) }
cylinder { z*(Table_Height-0.05), z*(Table_Height-0.01), 0.5 }
cylinder { z*(Table_Height-0.01), z*Table_Height, 0.49 }
union {
cylinder { z*0.01, z*0.63, 0.03 translate 0.37*x }
cylinder { z*0.01, z*0.63, 0.03 translate 0.37*x rotate 120*z }
cylinder { z*0.01, z*0.63, 0.03 translate 0.37*x rotate 240*z }
texture { Tex_Table_Foot }
rotate -70*z
}
union {
object { Round_Cylinder_Merge (0, z*0.03, 0.031, 0.005) translate 0.37*x }
object { Round_Cylinder_Merge (0, z*0.03, 0.031, 0.005) translate 0.37*x rotate 120*z }
object { Round_Cylinder_Merge (0, z*0.03, 0.031, 0.005) translate 0.37*x rotate 240*z }
texture { Tex_Table_Foot_Bottom }
rotate -70*z
}
texture { Tex_Dark_Wood2 }
#if (show_TableCloth)
scale <0.97, 0.97, 0.99>
#else
scale <0.97, 0.97, 1.00>
#end
}
object { Table translate <3.3,2.52,0> }
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

View File

@@ -0,0 +1,91 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Include File
// File: table_cloth.inc
// Desc: table cloth for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#declare ClCol01=color rgb <0.8, 0.7, 0.4>;
#declare ClCol02=color rgb <0.07, 0.12, 0.4>;
#declare CPig1=
pigment {
gradient x
triangle_wave
color_map {
[0.04 ClCol01 ]
[0.04 ClCol02 ]
[0.06 ClCol02 ]
[0.06 ClCol01 ]
[0.09 ClCol01 ]
[0.09 ClCol02 ]
[0.13 ClCol02 ]
[0.13 ClCol01 ]
[0.16 ClCol01 ]
[0.16 ClCol02 ]
[0.18 ClCol02 ]
[0.18 ClCol01 ]
}
}
#declare CPig2=
pigment {
gradient y
triangle_wave
pigment_map {
[0.04 CPig1 ]
[0.04 ClCol02 ]
[0.06 ClCol02 ]
[0.06 CPig1 ]
[0.09 CPig1 ]
[0.09 ClCol02 ]
[0.13 ClCol02 ]
[0.13 CPig1 ]
[0.16 CPig1 ]
[0.16 ClCol02 ]
[0.18 ClCol02 ]
[0.18 CPig1 ]
}
}
/*
#include "clothutil.inc"
ReadClothFile("cloth.cth")
DrawSmoothTriangles2(Points, 90, 90, on, true, "cloth.inc")
*/
#declare Table_Cloth=
mesh2{
#include "cloth.inc"
texture {
uv_mapping
pigment {
CPig2
}
finish {
ambient 0.0
diffuse 0.6
}
normal {
quilted 0.16
scale 0.008
}
}
rotate -30*z
}
object { Table_Cloth translate <3.3,2.52,0> }
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

View File

@@ -0,0 +1,136 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Include File
// File: table_stuff.inc
// Desc: stuff on the table for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#declare Mat_Glass=
material {
texture {
pigment { color rgbt 1 }
finish {
ambient 0.0
diffuse 0.1
specular 0.5
roughness 0.01
reflection {
0.15, 1.0
fresnel on
}
conserve_energy
}
}
interior {
ior 1.5
fade_distance 0.1
fade_power 1001
fade_color <0.4,0.4,0.8>
}
}
#declare Tex_Box_Metal=
texture {
pigment {
color rgb <0.5,0.45,0.4>
}
finish {
ambient 0.0
diffuse 0.05
specular 0.5
roughness 0.01
metallic
reflection {
0.8
metallic
}
}
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#include "shapes.inc"
#include "functions.inc"
#declare Table_Height=0.66;
#declare Box_Iso=
isosurface {
function { -f_superellipsoid(x,y,z, 0.2, 0.2) }
contained_by {box { -1.2, 1.2 }}
max_gradient 1.1
translate 1.001*z
}
#declare Box=
union {
intersection {
object { Box_Iso }
object { Round_Box_Merge (<-1.1,-1.1,1.6>, <1.1,1.1,-0.1>, 0.4) }
}
intersection {
object { Box_Iso }
object { Round_Box_Merge (<-1.1,-1.1,1.6>, <1.1,1.1,2.2>, 0.4) }
scale 1.01
rotate 0.2
}
torus {
0.6, 0.13
rotate 90*z
translate 2*z
}
scale <1,1,0.6>
}
#include "bglass.inc"
union {
object {
Glass
photons{
target 1.0
refraction on
reflection on
}
translate <-0.16,-0.1,0>
}
object {
Box
texture {
Tex_Box_Metal
}
photons{
target 1.0
reflection on
}
scale 0.06
translate <-0.1,0.2,0>
}
translate <3.3,2.52,Table_Height>
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

118
samples/POV-Ray SDL/terrain.inc Executable file
View File

@@ -0,0 +1,118 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence of Vision Ray Tracer Include File
// File: terrain.inc
// Desc: terrain for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#declare Tex_Vegetation=
texture {
pigment {
bozo
color_map {
[0.3 color rgb <0.20,0.35,0.1>*0.9 ]
[0.8 color rgb <0.12,0.35,0.1>*0.7 ]
}
scale 4
}
finish {
ambient 0.0
diffuse 0.5
brilliance 0.8
specular 0.1
}
normal {
granite 0.4
}
}
#declare Tex_Stone=
texture {
pigment {
color rgb <0.6,0.6,0.6>
}
finish {
ambient 0.0//0.1
diffuse 0.45
specular 0.15
}
}
#declare Tex_Terrain=
texture {
slope -z
texture_map {
[0.34 Tex_Vegetation ]
[0.34 Tex_Stone ]
}
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#declare Terrain=
object {
height_field {
function 300,300 {
pigment {
function { 1-(min(pow(x*x + z*z,1.3), 1) -0.0001) }
color_map {
[0.0 color rgb 0.0]
[1.0 color rgb 1.0]
}
scale 0.35
translate <0.5,0,0.5>
warp { turbulence 0.3 }
scale 3
warp { turbulence 0.4 lambda 2.2 octaves 8 }
scale 1/3
rotate -90*x
translate -0.5*y
scale <1, -1, 1>
translate 0.5*y
}
}
water_level 0.02
rotate 90*x
rotate -10*z
scale <4, 4, 1>
scale 30
}
}
union {
object {
Terrain
translate <130, 368, -10>
}
object {
Terrain
rotate -180*z
scale 0.3
translate <90, 97, -6>
}
texture { Tex_Terrain }
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/

74
samples/POV-Ray SDL/water.inc Executable file
View File

@@ -0,0 +1,74 @@
// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a
// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
// Persistence Of Vision Ray Tracer Include File
// File: water.inc
// Desc: water for 'balcony.pov' demonstration scene
// Date: July/August 2001
// Auth: Christoph Hormann
// Updated: 09Aug2008 (jh) for v3.7 distribution
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
#if (version < 3.7)
#version 3.5;
#end
#include "functions.inc"
#declare RMF=function{ f_ridged_mf(x, y, z, 0.07, 2.2, 7, 0.6, 0.9, 1)}
#declare M_Watx4 =
material {
texture {
pigment {
color rgbt <0.2, 0.22, 0.21, 0.94>
}
finish {
diffuse 0.0
ambient -0.2
reflection {
0.0, 0.95
fresnel on
}
conserve_energy
specular 0.4
roughness 0.007
}
normal{
function { RMF(x, y, z) } 0.8
scale 0.3
}
}
interior {
ior 1.31
fade_distance 5
fade_power 1001.0
fade_color <0.02, 0.20, 0.06>
}
}
plane {
z, -1
material {
M_Watx4
}
hollow on
}
plane {
z, -12.0
texture {
pigment { color rgb 0 }
finish { ambient 0.0 diffuse 0.0 }
}
hollow on
}
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/