1// This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. 2// To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a 3// letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. 4 5// Persistence Of Vision Raytracer sample file. 6// Woods.inc demonstration on spheres, cones, and cubes. 7// Try woods1.pov on slower computers. 8// 9// -w320 -h240 10// -w800 -h600 +a0.3 11 12#version 3.6; 13global_settings {assumed_gamma 2.2} 14 15#default { finish { specular 0.15 roughness 0.025 ambient 0.25 } } 16// Set default finish for wood textures before including the file 17 18#include "colors.inc" 19#include "woods.inc" 20 21camera { 22 location <0, 30, -60> 23 direction <0, 0, 3.95> 24 right x*1.33 25 look_at 3*y 26} 27 28light_source {<-50, 50, -1000> color Gray75} 29light_source {< 50, 30, -20> color White} 30 31background { color Gray30 } 32 33#declare Thing = 34union { 35 sphere{<0, 4, 0>, 1} 36 cone { -y, 1, y, 0.5 translate 2*y } 37 box {-1, 1 translate y} 38 no_shadow 39} 40 41#declare T01 = texture { T_Wood1 rotate x*90 } 42#declare T02 = texture { T_Wood2 rotate x*90 } 43#declare T03 = texture { T_Wood3 rotate x*90 } 44#declare T04 = texture { T_Wood4 rotate x*90 } 45#declare T05 = texture { T_Wood5 rotate x*90 } 46 47#declare T06 = texture { T_Wood6 rotate x*90 } 48#declare T07 = texture { T_Wood7 rotate x*90 } 49#declare T08 = texture { T_Wood8 rotate x*90 } 50#declare T09 = texture { T_Wood9 rotate x*90 } 51#declare T10 = texture { T_Wood10 rotate x*90 } 52 53#declare T11 = texture { T_Wood11 rotate x*90 } 54#declare T12 = texture { T_Wood12 rotate x*90 } 55#declare T13 = texture { T_Wood13 rotate x*90 } 56#declare T14 = texture { T_Wood14 rotate x*90 } 57#declare T15 = texture { T_Wood15 rotate x*90 } 58 59#declare T16 = texture { T_Wood16 rotate x*90 } 60#declare T17 = texture { T_Wood17 rotate x*90 } 61#declare T18 = texture { T_Wood18 rotate x*90 } 62#declare T19 = texture { T_Wood19 rotate x*90 } 63#declare T20 = texture { T_Wood20 rotate x*90 } 64 65#declare T21 = texture { T_Wood21 rotate x*90 } 66#declare T22 = texture { T_Wood22 rotate x*90 } 67#declare T23 = texture { T_Wood23 rotate x*90 } 68#declare T24 = texture { T_Wood24 rotate x*90 } 69#declare T25 = texture { T_Wood25 rotate x*90 } 70 71#declare T26 = texture { T_Wood26 rotate x*90 } 72#declare T27 = texture { T_Wood27 rotate x*90 } 73#declare T28 = texture { T_Wood28 rotate x*90 } 74#declare T29 = texture { T_Wood29 rotate x*90 } 75#declare T30 = texture { T_Wood30 rotate x*90 } 76 77#declare T31 = texture { T_Wood31 rotate x*90 } 78#declare T32 = texture { T_Wood32 rotate x*90 } 79#declare T33 = texture { T_Wood33 rotate x*90 } 80#declare T34 = texture { T_Wood34 rotate x*90 } 81#declare T35 = texture { T_Wood35 rotate x*90 } 82 83 84 85#declare Height = 1; 86 87#declare Dist1 = -8; 88#declare Dist2 = -4; 89#declare Dist3 = 0; 90#declare Dist4 = 4; 91#declare Dist5 = 8; 92#declare Dist6 = 12; 93#declare Dist7 = 16; 94 95#declare Col1 = -8; 96#declare Col2 = -4; 97#declare Col3 = 0; 98#declare Col4 = 4; 99#declare Col5 = 8; 100 101// 1st row, left to right 102union { 103object { Thing texture{T01} translate <Col1 Height Dist1 >} 104object { Thing texture{T02} translate <Col2 Height Dist1 >} 105object { Thing texture{T03} translate <Col3 Height Dist1 >} 106object { Thing texture{T04} translate <Col4 Height Dist1 >} 107object { Thing texture{T05} translate <Col5 Height Dist1 >} 108translate -x 109} 110 111// 2nd row, left to right 112union { 113object { Thing texture{T06} translate <Col1 Height Dist2 >} 114object { Thing texture{T07} translate <Col2 Height Dist2 >} 115object { Thing texture{T08} translate <Col3 Height Dist2 >} 116object { Thing texture{T09} translate <Col4 Height Dist2 >} 117object { Thing texture{T10} translate <Col5 Height Dist2 >} 118translate x 119} 120 121// 3rd row, left to right 122union { 123object { Thing texture{T11} translate <Col1 Height Dist3 >} 124object { Thing texture{T12} translate <Col2 Height Dist3 >} 125object { Thing texture{T13} translate <Col3 Height Dist3 >} 126object { Thing texture{T14} translate <Col4 Height Dist3 >} 127object { Thing texture{T15} translate <Col5 Height Dist3 >} 128translate -x 129} 130 131// 4th row, left to right 132union { 133object { Thing texture{T16} translate <Col1 Height Dist4 >} 134object { Thing texture{T17} translate <Col2 Height Dist4 >} 135object { Thing texture{T18} translate <Col3 Height Dist4 >} 136object { Thing texture{T19} translate <Col4 Height Dist4 >} 137object { Thing texture{T20} translate <Col5 Height Dist4 >} 138translate x 139} 140 141// 5th row, left to right 142union { 143object { Thing texture{T21} translate <Col1 Height Dist5 >} 144object { Thing texture{T22} translate <Col2 Height Dist5 >} 145object { Thing texture{T23} translate <Col3 Height Dist5 >} 146object { Thing texture{T24} translate <Col4 Height Dist5 >} 147object { Thing texture{T25} translate <Col5 Height Dist5 >} 148translate -x 149} 150 151// 6th row, left to right 152union { 153object { Thing texture{T26} translate <Col1 Height Dist6 >} 154object { Thing texture{T27} translate <Col2 Height Dist6 >} 155object { Thing texture{T28} translate <Col3 Height Dist6 >} 156object { Thing texture{T29} translate <Col4 Height Dist6 >} 157object { Thing texture{T30} translate <Col5 Height Dist6 >} 158translate x 159} 160 161// 7th row, left to right 162union { 163object { Thing texture{T31} translate <Col1 Height Dist7 >} 164object { Thing texture{T32} translate <Col2 Height Dist7 >} 165object { Thing texture{T33} translate <Col3 Height Dist7 >} 166object { Thing texture{T34} translate <Col4 Height Dist7 >} 167object { Thing texture{T35} translate <Col5 Height Dist7 >} 168translate -x 169} 170 171 172