POV-Ray revision01
POV-Ray revision01 2000 10 13 2001 8 9 2002 1 24 2004 3 19 2008 1 30 2013 12 4 2015 2 10 revision01 Copyright c 2000 2015 Daikoku Manabu This tutorial is licensed under a Creative Commons Attribution 2.1 Japan License.
3 1 POV-Ray 10 1.1 POV-Ray............................... 10 1.1.1 3....................... 10 1.1.2 POV-Ray.............................. 10 1.1.3 POV-Team.................................. 10 1.1.4..................................... 10 1.2 POV-Ray.................................. 10 1.2.1................................. 10 1.2.2................................. 11 1.2.3................ 11 1.3..................................... 11 1.3.1............................... 11 1.3.2............................... 12 1.3.3...................................... 12 1.4........................................... 12 1.4.1.................................... 12 1.4.2.................................... 12 1.4.3..................................... 13 1.4.4.................................. 13 1.4.5.................................... 13 1.4.6................................ 14 1.4.7................................ 14 1.5......................................... 14 1.5.1................................. 14 1.5.2...................................... 14 1.5.3................................ 15 1.6........................................... 15 1.6.1.................................. 15 1.6.2.................................... 15 1.7.......................................... 15 1.7.1.................................. 15 1.7.2................................. 16 1.7.3..................................... 17 1.7.4.................................. 17 1.7.5.................. 18 1.8.......................................... 18 1.8.1.................................. 18 1.8.2............................... 19 1.9......................................... 19 1.9.1................................. 19 1.9.2................................. 19 1.9.3................................. 20 1.9.4............................. 21 1.10.......................................... 21 1.10.1..................................... 21 1.10.2................................ 22 1.10.3................................. 22 1.10.4................................ 22 1.10.5........................... 23 1.10.6................................. 24
4 2 24 2.1...................................... 24 2.1.1................................. 24 2.1.2................................. 24 2.2.......................................... 24 2.2.1.................................. 24 2.2.2.................................. 24 2.3.......................................... 25 2.3.1.................................. 25 2.3.2.................................. 25 2.3.3.................................. 26 2.3.4............................. 27 2.4.......................................... 27 2.4.1.................................. 27 2.4.2.................................. 27 2.4.3.................................. 28 3 29 3.1.......................................... 29 3.1.1................................ 29 3.1.2.................................. 29 3.1.3.................................. 29 3.2.......................................... 30 3.2.1.................................. 30 3.2.2.................................. 30 3.3........................................ 30 3.3.1................................ 30 3.3.2................................ 30 3.3.3............................ 31 3.4.......................................... 32 3.4.1.................................. 32 3.4.2.................................. 32 3.5........................................ 32 3.5.1................................ 32 3.5.2................................ 33 3.5.3................................ 33 3.5.4....................... 33 3.5.5.................................... 34 3.5.6........................... 35 3.6......................................... 35 3.6.1................................. 35 3.6.2................................. 36 3.6.3............................... 36 3.6.4............................ 37 3.6.5...................... 37 3.7........................................ 38 3.7.1................................ 38 3.7.2................................ 38 3.7.3............................. 39 3.7.4............................. 39 3.7.5.......................... 40 3.8......................................... 40 3.8.1................................. 40 3.8.2................................. 41 3.8.3............................... 41
5 3.9...................................... 42 3.9.1............................... 42 3.9.2............................... 42 3.10 2..................................... 43 3.10.1 2............................. 43 3.10.2 2............................. 43 4 CSG 43 4.1 CSG...................................... 43 4.1.1 CSG................................. 43 4.1.2.................................... 43 4.1.3 CSG.................................. 44 4.2.......................................... 44 4.2.1.................................. 44 4.2.2.................................. 44 4.2.3................................ 44 4.2.4................................ 45 4.2.5............................. 45 4.3........................................ 46 4.3.1................................ 46 4.3.2................................ 46 4.3.3..................................... 46 4.4.......................................... 47 4.4.1.................................. 47 4.4.2.................................. 47 4.4.3................................. 47 4.4.4...................................... 48 4.5 CSG..................................... 48 4.5.1 CSG............................. 48 4.5.2............................... 49 4.5.3............................... 49 5 50 5.1................................. 50 5.1.1................................ 50 5.1.2............................. 50 5.1.3............................. 50 5.2................................... 51 5.2.1.......................... 51 5.2.2..................... 51 5.2.3................................. 51 5.2.4............................... 51 5.2.5............................... 52 5.2.6................................ 52 5.2.7........................... 53 5.3..................................... 53 5.3.1............................ 53 5.3.2............................ 53 5.3.3................................ 54 5.3.4...................................... 54 5.3.5...................................... 55 5.3.6....................................... 55 5.3.7...................................... 56 5.3.8.................................... 56 5.3.9...................................... 57
6 5.3.10...................................... 57 5.3.11...................................... 58 5.4........................................ 59 5.4.1........................ 59 5.4.2.......................... 59 5.4.3..................................... 60 5.4.4................................. 60 5.5........................................... 61 5.5.1........................ 61 5.5.2.................................. 62 5.6..................................... 62 5.6.1............................. 62 5.6.2.................................... 62 5.6.3.................................... 63 5.6.4.................................. 63 5.7........................................ 64 5.7.1................................ 64 5.7.2................................ 64 5.7.3..................................... 64 5.7.4..................................... 65 6 65 6.1............................. 65 6.1.1....................... 65 6.1.2...................... 66 6.1.3.......................... 66 6.2........................... 66 6.2.1....................... 66 6.2.2 colors.inc...................... 67 6.3.......................... 67 6.3.1.................. 67 6.3.2 shapes.inc.................................. 67 6.3.3 shapes2.inc................................. 67 6.3.4 shapesq.inc................................. 68 6.4..................... 68 6.4.1.................. 68 6.4.2 woods.inc.................................. 68 6.4.3 stones.inc.................................. 69 6.4.4 metals.inc.................................. 69 6.4.5 golds.inc.................................. 70 6.5......................... 70 6.5.1................................ 70 6.5.2....................... 70 6.5.3..................... 70 6.5.4..................... 71 6.5.5.................. 71 7 72 7.1................................ 72 7.1.1................................. 72 7.1.2...................................... 72 7.1.3..................................... 72 7.1.4................................ 72 7.2...................................... 73 7.2.1............................... 73
7 7.2.2.................................... 73 7.2.3................................ 73 7.3...................................... 73 7.3.1............................... 73 7.3.2................................. 73 7.3.3................................. 74 7.3.4................................ 74 7.4.................................... 74 7.4.1............................ 74 7.4.2.................................... 75 7.4.3........................... 75 7.4.4..................................... 76 7.5................................... 76 7.5.1........................... 76 7.5.2................................. 76 7.5.3............................... 77 7.6.................................... 77 7.6.1............................ 77 7.6.2................................. 77 7.6.3................................. 78 7.7.................................... 78 7.7.1............................ 78 7.7.2................................. 78 7.7.3...................................... 79 7.7.4...................................... 79 7.8...................................... 80 7.8.1............................... 80 7.8.2........................ 80 7.9........................................ 81 7.9.1................................ 81 7.9.2................................ 81 7.9.3.................................. 81 7.9.4.................................. 82 7.9.5............................... 83 8 84 8.1................................. 84 8.1.1................................. 84 8.1.2................................ 84 8.1.3...................................... 84 8.1.4..................................... 84 8.1.5...................... 84 8.1.6............................. 84 8.1.7................................. 85 8.1.8................................ 85 8.1.9........................... 85 8.2........................................ 85 8.2.1.................................... 85 8.2.2.................................. 86 8.2.3........................... 87 8.3...................................... 88 8.3.1........................... 88 8.3.2............................. 88 8.4......................................... 89 8.4.1.................................. 89
8 8.4.2............................ 89 8.4.3...................... 90 8.4.4............................... 91 9 92 9.1................................ 92 9.1.1 POV-Ray......................... 92 9.1.2.................................. 92 9.1.3 clock..................................... 92 9.1.4................................ 93 9.1.5.................................. 93 9.2 clock.................................... 93 9.2.1 clock............................ 93 9.2.2................... 94 9.2.3....................... 94 9.2.4....................... 94 9.3........................... 94 9.3.1................... 94 9.3.2........................ 95 9.3.3..................... 95 9.4........................... 95 9.4.1................... 95 9.4.2................. 96 9.4.3...................... 96 9.4.4....................... 96 9.5........................... 97 9.5.1................... 97 9.5.2...................... 97 9.5.3........................... 97 9.6............................. 98 9.6.1..................... 98 9.6.2...................... 98 9.6.3...................... 98 9.7............................. 99 9.7.1................................ 99 9.7.2...................... 99 9.7.3........................ 99 9.7.4...................... 99 9.7.5.......................... 100 10 100 10.1........................................ 100 10.1.1................................ 100 10.1.2................................ 101 10.1.3................................ 101 10.2......................................... 102 10.2.1................................. 102 10.2.2................................. 102 10.3.................................... 103 10.3.1............................ 103 10.3.2............................ 103 10.4..................................... 104 10.4.1............................. 104 10.4.2............................. 104
9 11 105 11.1.................................... 105 11.1.1............................... 105 11.1.2................................ 105 11.1.3............................... 105 11.1.4........................ 106 11.2..................................... 106 11.2.1............................. 106 11.2.2............................. 106 11.2.3........................... 107 11.2.4............................ 107 11.3..................................... 108 11.3.1............................. 108 11.3.2............................. 108 11.4..................................... 108 11.4.1............................. 108 11.4.2............................. 109 11.5..................................... 109 11.5.1............................. 109 11.5.2............................ 109 11.5.3............................... 109 11.5.4............................. 110 11.5.5............................. 110 11.5.6............................. 110 11.6.................................... 111 11.6.1............................ 111 11.6.2............................ 111 11.7........................................... 112 11.7.1.................................... 112 11.7.2............................ 112 11.7.3............................. 113 113 115
10 1 POV-Ray 1 POV-Ray 1.1 POV-Ray 1.1.1 3 2 3 2 2 (two-dimensional graphics) 3 3 (three-dimensional graphics) 2 3 (rendering) 3 (modeling) 1.1.2 POV-Ray (renderer) POV-Ray POV-Ray Persistence of Vision Raytracer 1.1.3 POV-Team POV-Ray POV-Team POV-Ray 1 1.1.4 POV-Ray (scene) (scene description language, SDL) POV-Ray POV-Ray 1.2 POV-Ray 1.2.1 POV-Ray POV-Ray 1 POV-Ray URL http://www.povray.org/
1.3. 11 Windows POV-Ray [New] [Untitled] [Save] sphere.pov sphere.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 sphere { 0, 1 pigment { color rgb 1 POV-Ray.pov 1.2.2 Windows POV-Ray [Run] [Run] [Stop] [Stop] POV-Ray 1.2.3 Windows POV-Ray (antialiasing) 512 384 No AA AA 0.3 No AA AA 0.3 0.3 1.3 1.3.1 POV-Ray (camera) (light source) (object)... light_source {......
12 1 POV-Ray 1.2.1 1.3.2 (space) (tab) (line feed) (white space) POV-Ray 1 light_source { <-5, 5, -5> color rgb 1.6 light_source { <-5, 5, -5> color rgb 1.6 1.3.3 (comment) POV-Ray POV-Ray ( // ) // POV-Ray // I am a comment. ( /* ) ( */ ) 2 /* */ POV-Ray /* I am a comment which contains a line feed. */ (comment out) 1.4 1.4.1 POV-Ray (expression) (evaluation) (value) 1.4.2 (literal) (numeric literal)
1.4. 13 583-240 0.017 10 10 e 1e30 1000000000000000000000000000000 1e-30 0.000000000000000000000000000001 1.4.3 (operator) (operation) 1.4.4 (arithmetic operator) POV-Ray A + B A - B A * B A / B A B A B A B A B 530+42 530 42 572 * / + - * / + - 7*3+4 7 3 4 25 7*(3+4) 7 3 4 49 1.4.5 (vector) (component) (dimension) n n (n-dimensional vector) 1 1 (scalar) <,,, > <75, 34, 81> 75 34 81
14 1 POV-Ray 3 20 <20, 20, 20> 1.4.6 2 1 2 (sum) + <5, 3, 4> + <2, 7, 8> <7, 10, 12> 1.4.7 1 1 1 (product) * <5, 2, 3> * 40 <200, 80, 120> 1.5 1.5.1 (coordinate system) (axis) 1 1 2 2 3 3 3 3 x (x-axis) y (y-axis) z (z-axis) 1 (origin) x y z 1.5.2 3 (coordinates) 3 x (x-coordinate) y (y-coordinate) z (z-coordinate)
1.6. 15 3 x x y y z z 3 <7, 3, -6> 7 x 3 y 6 z 1 1.5.3 3 2 (right-handed system) (left-handed system) x y z x y z 3 POV-Ray 1.6 1.6.1 (red) (green) (blue) RGB 1.6.2 POV-Ray RGB color rgb 3 3 0 1 3 <0, 0, 0> <1, 1, 0> <1, 1, 1> <0, 1, 1> <1, 0, 0> <1, 0, 1> <0, 1, 0> <0, 0.5, 0> <0, 0, 1> <1, 0.5, 0> <0.5, 0.5, 0.5> <0, 0.5, 1> (lime) 1.7 1.7.1 POV-Ray... 1.2.1
16 1 POV-Ray sphere { 0, 1 pigment { color rgb 1 sphere { 0, 1 pigment { color rgb 1 1.7.2 POV-Ray (primitive) 1.2.1 sphere { 0, 1 (sphere) sphere { sphere, 3 sphere { <3, 2, 7>, 5 <3, 2, 7> 5 1.4.5 1.2.1 sphere { 0, 1 0 <0, 0, 0> 3 1 sphere2.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 sphere { <0, 0, 0>, 0.2 pigment { color rgb 1
1.7. 17 sphere { <0, -101, 0>, 100 pigment { color rgb 1 1.7.3 3 (box) box box box { 1, 2 1 2 3 1 2 box { <0, 1, 2>, <3, 4, 5> <0, 1, 2> <3, 4, 5> box x y z <1, 1, 1> <2, 2, 2> box.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 box { <1, 1, 1>, <2, 2, 2> pigment { color rgb 1 1.7.4 (pigment) 5 pigment { pigment { color rgb 1 1 <1, 1, 1> 3 pigment.pov
18 1 POV-Ray location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 sphere { <0, 0, 0>, 1 pigment { color rgb <0.5, 1, 0> 1.7.5 POV-Ray sphere { 0, 1 pigment { color rgb 1 sphere { 0, 1 pigment { color rgb 1 1.8 1.8.1 POV-Ray (ambient light) POV-Ray light_source {... light_source { <-5, 5, -5> color rgb 1.6 <-5, 5, -5> color rgb 1.6 <5, 0, 0> <-5, 0, 0> lightlocation.pov location <0, 0, -3>
1.9. 19 light_source { <5, 0, 0> color rgb 1.6 light_source { <-5, 0, 0> color rgb 1.6 sphere { 0, 1 pigment { color rgb 1 1.8.2 0 1 1 lightcolor.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb <1.6, 0.8, 0> sphere { 0, 1 pigment { color rgb 1 1.9 1.9.1 3 POV-Ray POV-Ray... 1.9.2 location 3 location <0, 0, -3> z 3
20 1 POV-Ray x y x 3 <10, 5, -10> location.pov location <10, 5, -10> light_source { <20, 30, -20> color rgb 1.6 box { <-10, -1, -1>, <10, 1, 1> pigment { color rgb <1, 1, 0> box { <-1, -10, -1>, <1, 10, 1> pigment { color rgb <1, 0, 1> box { <-1, -1, -10>, <1, 1, 10> pigment { color rgb <0, 1, 1> 1.9.3 look_at 3 0 <0, 0, 0> 1.9.2 <-10, 0, 0> lookat.pov location <10, 5, -10> look_at <-10, 0, 0> light_source { <20, 30, -20> color rgb 1.6 box { <-10, -1, -1>, <10, 1, 1> pigment { color rgb <1, 1, 0> box { <-1, -10, -1>, <1, 10, 1> pigment { color rgb <1, 0, 1> box { <-1, -1, -10>, <1, 1, 10>
1.10. 21 pigment { color rgb <0, 1, 1> 1.9.4 POV-Ray angle 0 180 70 1.9.2 70 30 angle.pov location <10, 5, -10> angle 30 light_source { <20, 30, -20> color rgb 1.6 box { <-10, -1, -1>, <10, 1, 1> pigment { color rgb <1, 1, 0> box { <-1, -10, -1>, <1, 10, 1> pigment { color rgb <1, 0, 1> box { <-1, -1, -10>, <1, 1, 10> pigment { color rgb <0, 1, 1> 1.10 1.10.1 POV-Ray (identifier) 58.3 Yokohaba Yokohaba 58.3
22 1 POV-Ray 1.10.2 POV-Ray ( _ ) 1 40 (reserved word) camera object sphere a A a8 namako back_to_the_future a A nam@ko 8a camera POV-Ray 1.10.3 (declare) (declaration) #declare = #declare Hako = box { <0, 0, 0>, <1, 1, 1> pigment { color rgb 1 Hako 1.10.4 object pigment Midori pigment { Midori declare.pov
1.10. 23 #declare Camera = location <0, 0, -3> #declare Light = light_source { <-5, 5, -5> color rgb 1.6 #declare Sphere = sphere { 0, 1 #declare SkyBlue = pigment { color rgb <0.3, 0.6, 1> #declare Object = Sphere pigment { SkyBlue Camera Light Object 1.10.5 #declare = ; ( ; ) #declare Takasa = 80; Takasa 80 #declare Houkou = <3, 2, 5>; Houkou <3, 2, 5> #declare = color rgb 3 ; #declare Orange = color rgb <1, 0.5, 0>; Orange semicolon.pov #declare CameraLocation = <0, 0, -3>; #declare CameraLookAt = <0, 0, 0>; #declare CameraAngle = 70; #declare LightLocation = <-5, 5, -5>; #declare LightColor = color rgb <1.6, 1.6, 1.6>; #declare SphereLocation = <0, 0, 0>; #declare SphereRadius = 1; #declare Crimson = color rgb <0.86, 0.07, 0.23>; location CameraLocation look_at CameraLookAt angle CameraAngle light_source { LightLocation LightColor
24 2 sphere { SphereLocation, SphereRadius pigment { Crimson 1.10.6 1 1 0 (elementary vector) 3 POV-Ray x = <1, 0, 0> y = <0, 1, 0> z = <0, 0, 1> x y z x y z POV-Ray (built-in identifier) 2 2.1 2.1.1 POV-Ray (transformation) 2.1.2 2.2 2.2.1 (translation) x y z 3 2.2.2 translate
2.3. 25 3 Katachi pigment { Iro translate <20, 10, -30> x 20 y 10 z 30 <3, 4, 5> translate.pov #declare Box = box { -1, 1 location <10, 5, -10> light_source { <20, 30, -20> color rgb 1.6 Box pigment { color rgb 1 Box pigment { color rgb <0, 1, 1> translate <3, 4, 5> 2.3 2.3.1 (scaling) x y z 3 1 2.3.2 scale 3 Katachi pigment { color Iro scale <2, 0.5, 3>
26 2 x 2 y 0.5 z 3 x 5 y 0.2 z 0.5 scale.pov #declare Box = box { -1, 1 location <10, 5, -10> light_source { <20, 30, -20> color rgb 1.6 Box pigment { color rgb 1 Box pigment { color rgb <0, 1, 1> scale <5, 0.2, 0.5> 2.3.3 scale 2 translate 2 3 order.pov #declare Box = box { -1, 1 location <10, 5, -10> light_source { <20, 30, -20> color rgb 1.6 Box pigment { color rgb 1 Box pigment { color rgb <0, 1, 1> scale 2
2.4. 27 translate 2 Box pigment { color rgb <1, 1, 0> translate 2 scale 2 2.3.4 scale (spheroid) rugby.pov #declare RugbyBall = sphere { 0, 1 scale <1.8, 1, 1> location <0, 0, -4> light_source { <-10, 5, -10> color rgb 1.6 RugbyBall pigment { color rgb <0.6, 0.2, 0.1> 2.4 2.4.1 (rotation) x y z 3 <20, -50, 30> x 20 y 50 z 30 (degree) <30, 0, 0> 30*x 2.4.2 rotate 3 Katachi
28 2 pigment { color Iro rotate 120*z z 120 z 120 rotate.pov #declare Box = box { 0, <1, 10, 1> location <0, 0, -26> light_source { <-50, 50, -50> color rgb 1.6 Box pigment { color rgb 1 Box pigment { color rgb <0, 1, 1> rotate 120*z 2.4.3 x 30 y 60 y 60 x 30 3 y 90 z 90 z 90 y 90 rotate2.pov #declare Box = box { 0, <1, 10, 5> location <10, 15, -10> look_at <0, 5, 0> light_source { <20, 30, -20> color rgb 1.6 Box pigment { color rgb 1 Box pigment { color rgb <0, 1, 1> rotate 90*y rotate 90*z
29 Box pigment { color rgb <1, 1, 0> rotate 90*z rotate 90*y 3 3.1 3.1.1 1.7.2 POV-Ray (primitive) sphere box 3.1.2 (cylinder) (base) POV-Ray cylinder 3.1.3 cylinder cylinder { 1, 2, 1 2 3 1 2 cylinder { <2, 0, 3>, <2, 5, 3>, 4 <2, 0, 3> <2, 5, 3> 4 cylinder cylinder.pov location <0, 4, -6> light_source { <-5, 5, -5> color rgb 1.6 cylinder { <0, -2, 0>, <0, 2, 0>, 1 pigment { color rgb 1
30 3 3.2 3.2.1 (frustum) (base) 0 (cone) POV-Ray cone 3.2.2 cone cone { 1, 1, 2, 2 1 2 3 1 2 1 1 2 2 cone { <2, 0, 3>, 6, <2, 5, 3>, 4 <2, 0, 3> 6 <2, 5, 3> 4 1 2 0 cone cone.pov location <0, 4, -10> light_source { <-5, 5, -5> color rgb 1.6 cone { <0, -2, 0>, 3, <0, 2, 0>, 2 pigment { color rgb 1 3.3 3.3.1 (torus) POV-Ray torus 3.3.2 torus torus { 1, 2 1 2 1 2
3.3. 31 torus { 12, 3 12 3 torus torus.pov location <0, 4, -8> light_source { <-5, 5, -5> color rgb 1.6 torus { 3, 1 pigment { color rgb 1 3.3.3 torus 3 torus2.pov #declare Torus = torus { 3, 1 location <0, 8, -12> light_source { <-5, 5, -5> color rgb 1.6 Torus pigment { color rgb 1 Torus pigment { color rgb <0, 1, 1> translate <0, 0, 16> Torus pigment { color rgb <1, 1, 0> rotate 90*x translate <3, 0, 0>
32 3 3.4 3.4.1 plane plane (plane) 2 plane 3 plane 3 (normal vector) 3.4.2 plane plane {, 3 plane { <0, 1, 2>, 3 <0, 1, 2> 3 y <0, 1, 0> plane plane.pov location <0, 1, -1> look_at <0, 1, 0> light_source { <0, 50, 0> color rgb 1.6 plane { y, 0 pigment { color rgb 1 3.5 3.5.1 text text (text) 2 3 POV-Ray TrueType
3.5. 33 3 3.5.2 (string literal) ( " ) "namako" namako (\) ab"cd "ab\"cd" ab\cd "ab\\cd" 3.5.3 text text { ttf,,, 3 TrueType 3 0 <0, 0, 0> text { ttf "timrom.ttf", "umiushi", 3, 0 timrim.ttf TrueType umiushi 3 0 x text text.pov location <0, 2, -5> light_source { <-5, 5, -5> color rgb 1.6 text { ttf "timrom.ttf", "namako", 1, 0 pigment { color rgb 1 3.5.4 text
34 3 4 text2.pov #declare Text = text { ttf "timrom.ttf", "m", 1, 0 location <0, 2, -3> light_source { <-5, 5, -5> color rgb 1.6 Text pigment { color rgb 1 Text pigment { color rgb <0, 1, 1> translate <1, 0, 0> Text pigment { color rgb <1, 1, 0> rotate -135*z Text pigment { color rgb <1, 0, 1> scale 2 translate <-2, 0, 0> 3.5.5 0 0 x y 0.7*x 0.3*y offset.pov location <3, 3, -5> look_at <3, 1, 0> light_source { <-5, 5, -5> color rgb 1.6 text { ttf "timrom.ttf", "hitode", 1, 0.7*x pigment { color rgb 1 text { ttf "timrom.ttf", "kamenote", 1, 0.3*y pigment { color rgb 1
3.6. 35 translate <0, 0, 2> 3.5.6 POV-Ray POV-Ray timrom.ttf cyrvetic.ttf crystal.ttf TrueType timrom.ttf cyrvetic.ttf crystal.ttf 3 font.pov location <1.7, 0, -3> look_at <1.7, 1, 0> light_source { <-5, 5, -5> color rgb 1.6 text { ttf "timrom.ttf", "timrom", 1, 0 pigment { color rgb 1 translate <0, 2, 0> text { ttf "cyrvetic.ttf", "cyrvetic", 1, 0 pigment { color rgb 1 translate <0, 1, 0> text { ttf "crystal.ttf", "crystal", 1, 0 pigment { color rgb 1 3.6 3.6.1 (blob) (metaball) (blob component) 0 (threshold) 2 2 4 3 POV-Ray blob
36 3 3.6.2 blob blob { threshold sphere cylinder sphere cylinder sphere sphere {,, cylinder cylinder { 1, 2,, 0 blob { threshold 0.5 sphere { <-1, 0, 0>, 1.5, 1 sphere { <1, 0, 0>, 1.5, 1 1 1.5 0 0.5 blob.pov location <0, 0, -4> light_source { <-5, 5, -5> color rgb 1.6 blob { threshold 0.5 sphere { <-1, 0, 0>, 1.5, 1 sphere { <1, 0, 0>, 1.5, 1 pigment { color rgb 1 3.6.3 sphere cylinder blob2.pov
3.6. 37 location <0, 0, -5> light_source { <-5, 5, -5> color rgb 1.6 blob { threshold 0.5 sphere { <-1, 0, 0>, 1.5, 1 cylinder { <1, -1, 0>, <1, 1, 0>, 1.5, 1 pigment { color rgb 1 3.6.4 blob3.pov location <0, 0, -4> light_source { <-5, 5, -5> color rgb 1.6 blob { threshold 0.5 sphere { <-1, 0, 0>, 1.5, 1 pigment { color rgb <1, 1, 0> sphere { <1, 0, 0>, 1.5, 1 pigment { color rgb <0, 1, 1> 3.6.5 0 blob4.pov location <5, 0, -3>
38 3 light_source { <5, 3, -5> color rgb 1.6 blob { threshold 0.5 sphere { <0, 0, 0>, 4, 1 sphere { <2, 0, 0>, 1.5, -1 pigment { color rgb 1 3.7 3.7.1 (prism) (base) POV-Ray prism prism xz y 3.7.2 prism prism { y 1, y 2,, 1, 2,..., n y 1 y 2 y 1 2 n 2 2 1 x 2 z xz 1 4 <0, 1>, <1, 0>, <-1, 0>, <0, 1> Parse Warning: Linear prism not closed. Closing it. prism prism.pov location <0, 5, -5>
3.7. 39 look_at <0, 0.5, 0> light_source { <-5, 5, -5> color rgb 1.6 prism { -2, 2, 6, <0, 3>, <2, 1>, <1, -1>, <-1, -1>, <-2, 1>, <0, 3> pigment { color rgb 1 3.7.3 prismwithhole.pov location <0, 5, -10> light_source { <-2, 5, -5> color rgb 1.6 prism { 0, 1, 8, <0, 8>, <4, -4>, <-4, -4>, <0, 8>, <0, 2>, <2, -3>, <-2, -3>, <0, 2> pigment { color rgb 1 3.7.4 3 2 (quadratic spline curve) 3 (cubic spline curve) (Bézier curve) (Bézier curve) 4 1 2 3 4 1 2 3 4 4 prism { bezier_spline... 2
40 3 2 4 1 bezier.pov location <0, 4, -8> light_source { <-2, 5, -5> color rgb 1.6 prism { bezier_spline 0, 1, 8, <0, -4>, <-12, 8>, <-2, 20>, <0, 6>, <0, 6>, <2, 20>, <12, 8>, <0, -4> pigment { color rgb 1 3.7.5 2 2 1 3 1 4 2 1 2 2 3 1 2 egg.pov location <0, 10, -12> light_source { <-2, 5, -10> color rgb 1.6 prism { bezier_spline 0, 1, 8, <0, 5>, <10, 3>, <10, -3>, <0, -5>, <0, -5>, <-10, -7>, <-10, 7>, <0, 5> pigment { color rgb 1 3.8 3.8.1 (lathe) lathe POV-Ray lathe
3.8. 41 lathe xy y 360 xy x 0 3.8.2 lathe lathe {, 1, 2,..., n 1 2 n 2 2 1 x 2 y xy lathe.pov location <0, 6, -16> look_at <0, -2, 0> light_source { <-2, 5, -10> color rgb 1.6 lathe { 6, <5, 3>, <7, 3>, <6, 0>, <7, -3>, <5, -3>, <5, 3> pigment { color rgb 1 3.8.3 2 3 3 lathe { bezier_spline... 2 bezierlathe.pov location <0, 30, -70> look_at <0, -2, 0>
42 3 light_source { <-20, 40, -50> color rgb 1.6 lathe { bezier_spline 8, <30, -4>, <18, 8>, <26, 20>, <30, 10>, <30, 10>, <34, 20>, <42, 8>, <30, -4> pigment { color rgb 1 3.9 3.9.1 (sphere sweep) POV-Ray sphere_sweep 3.9.2 sphere_sweep sphere_sweep { linear_spline, 1, 1, 2, 2,..., n, n 1 1 2 2 n n 3 spheresweep.pov location <8, 10, -8> look_at <0, 2, 0> light_source { <5, 20, -10> color rgb 1.6 sphere_sweep { linear_spline 4, <-10, -5, 0>, 1, <0, -5, 0>, 1, <0, 5, 0>, 1, <0, 5, 10>, 1 pigment { color rgb 1
3.10. 2 43 3.10 2 3.10.1 2 POV-Ray superellipsoid 2 (superellipsoid) 3.10.2 2 superellipsoid 2 superellipsoid { < E, N > E N E 2 z N x y E N 0 1 1 0 superellipsoid 2 2 superellipsoid.pov location <2, 1.6, -3> light_source { <4, 6, -5> color rgb 1.6 superellipsoid { <0.3, 0.3> pigment { color rgb 1 E N 4 CSG 4.1 CSG 4.1.1 CSG CSG (constructive solid geometry) POV-Ray CSG 4.1.2 CSG (set operation) union
44 4 CSG 4.1.3 CSG CSG { CSG CSG 4.2 4.2.1 2 (union) (sum set) POV-Ray union CSG 4.2.2 union { union.pov location <3, 3, -4> look_at <-1, -0.5, 0> light_source { <6, 8, -5> color rgb 1.6 union { cylinder { <-1, -0.8, -1>, <-1, 0.8, -1>, 1.4 box { <-1, -1, -1>, <1, 1, 1> pigment { color rgb 1 4.2.3 hammer.pov #declare Hammer = union { cylinder { <-2, 3, 0>, <2, 3, 0>, 1 box { <-0.3, 5, -0.2>, <0.3, -5, 0.2> location <8, 0, -8> light_source { <7, 0, -5> color rgb 1.6
4.2. 45 Hammer pigment { color rgb 1 4.2.4 table.pov #declare Table = union { box { <-5, -0.2, -5>, <5, 0.2, 5> cylinder { <-4, 0, -4>, <-4, -7, -4>, 0.3 cylinder { <4, 0, -4>, <4, -7, -4>, 0.3 cylinder { <-4, 0, 4>, <-4, -7, 4>, 0.3 cylinder { <4, 0, 4>, <4, -7, 4>, 0.3 location <8, 2, -14> look_at <0, -4, 0> light_source { <10, 10, 0> color rgb 1.3 light_source { <0, -5, -10> color rgb 1.2 Table pigment { color rgb 1 4.2.5 union 5.4 POV-Ray union merge merge union union merge merge.pov location <0, 3, -6> light_source { <6, 8, -5> color rgb 1.6 union { box { <-1, -1, -1>, <1, 1, 1> box { <-0.5, -0.5, -0.5>, <1.5, 1.5, 1.5> pigment { color rgbf <1, 1, 1, 0.8> translate <-2, 0, 0> merge {
46 4 CSG box { <-1, -1, -1>, <1, 1, 1> box { <-1.5, -0.5, -0.5>, <0.5, 1.5, 1.5> pigment { color rgbf <1, 1, 1, 0.8> translate <2, 0, 0> 4.3 4.3.1 2 (intersection) (product) POV-Ray intersection CSG 4.3.2 intersection { intersection.pov location <2, 2, -3> look_at <-1, -0.5, 0> light_source { <6, 8, -5> color rgb 1.6 intersection { cylinder { <-1, -0.8, -1>, <-1, 0.8, -1>, 1.4 box { <-1, -1, -1>, <1, 1, 1> pigment { color rgb 1 4.3.3 (prism) (base) (octagonal prism) octagonal.pov #declare Octagonal = intersection { box { <-1, -1, -1>, <1, 1, 1> box { <-1, -2, -1>, <1, 2, 1> rotate y*45 location <0, 3, -3>
4.4. 47 light_source { <-5, 10, -5> color rgb 1.6 Octagonal pigment { color rgb 1 4.4 4.4.1 A 2 B 1 B 2 B 3 A B 1 B 2 B 3 (subtraction) (difference set) POV-Ray difference CSG 4.4.2 difference { 1 2 difference.pov location <2, 4, -4> look_at <-1, -0.5, 0> light_source { <2, 6, -5> color rgb 1.6 difference { cylinder { <-1, -0.8, -1>, <-1, 0.8, -1>, 1.4 box { <-1, -1, -1>, <1, 1, 1> pigment { color rgb 1 translate <-0.5, 0, -0.5> difference { box { <-1, -1, -1>, <1, 1, 1> cylinder { <-1, -0.8, -1>, <-1, 0.8, -1>, 1.4 pigment { color rgb 1 translate <0.5, 0, 0.5> 4.4.3 goendama.pov
48 4 CSG #declare Goendama = difference { cylinder { <0, -0.1, 0>, <0, 0.1, 0>, 2 cylinder { <0, -1, 0>, <0, 1, 0>, 0.6 location <0, 2, -4> look_at <0, -0.4, 0> light_source { <-5, 7, -5> color rgb 1.6 Goendama pigment { color rgb 1 4.4.4 (hemisphere) 3.4 hemisphere.pov #declare Hemisphere = difference { sphere { 0, 1 plane { -y, 0 location <0, 0.5, -2> look_at <0, -0.4, 0> light_source { <-5, 4, -5> color rgb 1.6 Hemisphere pigment { color rgb 1 4.5 CSG 4.5.1 CSG 4.1.3 CSG CSG CSG CSG difference { union {......
4.5. CSG 49 diffuni.pov location <0, 2, -4> look_at <-0.8, -0.8, 0> light_source { <-6, 8, -5> color rgb 1.6 difference { union { cylinder { <-1, -0.8, -1>, <-1, 0.8, -1>, 1.4 box { <-1, -1, -1>, <1, 1, 1> sphere { <-1, 0.5, -1>, 1.6 pigment { color rgb 1 4.5.2 pacman.pov #declare PacMan = difference { sphere { 0, 1 intersection { plane { <-0.7, 1, 0>, 0 plane { <-0.7, -1, 0>, 0 location <0.8, 0, -3> light_source { <-2, 2, -3> color rgb 1.6 light_source { <4, 1, 0> color rgb 1.2 PacMan pigment { color rgb <1, 1, 0> 4.5.3 magcup.pov #declare MagCup = union { difference { cylinder { <0, 0, 0>, <0, 2, 0>, 1 cylinder { <0, 0.1, 0>, <0, 3, 0>, 0.9 difference { torus { 0.6, 0.1 plane { x, 0 rotate 90*x
50 5 translate <0.9, 1.2, 0> location <2, 3, -2> look_at <0, 1, 0> light_source { <4, 6, -2> color rgb 1.6 MagCup pigment { color rgb 1 5 5.1 5.1.1 1.7.1 (pigment) 5.1.2 (pigment) (finish) (normal) 5.1.3 texture { texture {
5.2. 51 5.2 5.2.1 1.7.4 (pigment) pigment { 5.2.2 (color list) (color map) (pigment map) (image map) 5.2.3 (color list) (color list pigment) checker hexagon brick checker 2 3 checker brick 2 hexagon 3 5.2.4 checker checker checker 1, 2 checker color rgb <1, 0, 0>, color rgb <0, 0, 1>
52 5 checker.pov location <10, 10, -15> light_source { <10, 20, -20> color rgb 1.6 box { -5, 5 pigment { checker color rgb 1, color rgb <0, 0.6, 0> 5.2.5 hexagon y hexagon hexagon 1, 2, 3 hexagon color rgb <0, 1, 1>, color rgb <1, 1, 0>, color rgb <1, 0, 1> hexagon.pov location <10, 10, -15> light_source { <10, 20, -20> color rgb 1.6 box { -5, 5 pigment { hexagon color rgb 1, color rgb <0.3, 0.6, 1>, color rgb <0, 0, 0.5> 5.2.6 brick brick brick 1, 2 1 2 brick color rgb <0, 1, 1>, color rgb <1, 1, 0> brick.pov
5.3. 53 location <10, 10, -15> light_source { <10, 20, -20> color rgb 1.6 box { -5, 5 pigment { brick color rgb 1, color rgb <0.6, 0, 0> 5.2.7 x 5 z 30 x 3 tranpig.pov location <10, 10, -15> light_source { <10, 20, -20> color rgb 1.6 box { -5, 5 pigment { checker color rgb 1, color rgb <0, 0.6, 0> scale <5, 1, 1> rotate 30*z translate <3, 0, 0> 5.3 5.3.1 5.2.2 (color map) 0 1 5.3.2 color_map { [ ] 0 1
54 5 [0.4 color rgb <1, 0, 0>] 0.4 0 1 5.3.3 pigment { (pattern type) gradient cylindrical spherical wood onion spotted cells crackle 5.3.4 gradient (gradient) gradient gradient 3 3 gradient y y y 0.4 gradient.pov location <3, 2, -3> light_source { <5, 5, -5> color rgb 1.6
5.3. 55 box { -1, 1 pigment { gradient y color_map { [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] scale 0.4 5.3.5 cylindrical (cylindrical) y xz 1 y 0 cylindrical cylindrical y x 90 x 1 cylindrical.pov location <3, 2, -3> light_source { <5, 5, -5> color rgb 1.6 box { -1, 1 pigment { cylindrical color_map { [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] rotate 90*x translate <1, 0, 0> 5.3.6 spherical (sphere) 1 y 0 spherical spherical 2 <1, 1, -1> spherical.pov location <3, 2, -3>
56 5 light_source { <5, 5, -5> color rgb 1.6 box { -1, 1 pigment { spherical color_map { [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] scale 2 translate <1, 1, -1> 5.3.7 wood (annual ring) z xy wood wood 0.2 x 1 wood.pov location <3, 2, -3> light_source { <5, 5, -5> color rgb 1.6 box { -1, 1 pigment { wood color_map { [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] scale 0.2 translate <1, 0, 0> 5.3.8 onion (onion) onion onion 0.2 <1, 1, -1> onion.pov location <3, 2, -3> light_source { <5, 5, -5> color rgb 1.6
5.3. 57 box { -1, 1 pigment { onion color_map { [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] scale 0.2 translate <1, 1, -1> 5.3.9 spotted (spot) spotted spotted 0.3 spotted.pov location <3, 2, -3> light_source { <5, 5, -5> color rgb 1.6 box { -1, 1 pigment { spotted color_map { [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] scale 0.3 5.3.10 cells (cell) cells cells 0.4 cells.pov location <3, 2, -3> light_source { <5, 5, -5> color rgb 1.6 box { -1, 1 pigment { cells color_map {
58 5 [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] scale 0.4 5.3.11 crackle (crackle) crackle crackle form metric offset solid form 1 3 <-1, 1, 0> metric 1 2 offset 1 0 solid metric 0.4 crackle.pov location <3, 2, -3> light_source { <5, 5, -5> color rgb 1.6 box { -1, 1 pigment { crackle metric 1 color_map { [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] scale 0.4 solid solid 0.6 cracklesolid.pov location <3, 2, -3> light_source { <5, 5, -5> color rgb 1.6 box { -1, 1
5.4. 59 pigment { crackle solid color_map { [0 color rgb 1 ] [1 color rgb <0, 0, 1> ] scale 0.6 5.4 5.4.1 POV-Ray RGB (filter) (transmit) 0 1 RGB RGB RGB 5.4.2 color rgbf 4 4 4 color rgbf <1, 0, 0, 1> filter.pov location <0, 0, -5> light_source { <0, 0, -10> color rgb 1.6 box { <-4, -4, 0>, <4, 4, 1> pigment { checker color rgb 1, color rgb <0, 0, 1> sphere { <0, 0, -2>, 1 pigment { color rgbf <0, 1, 0, 1>
60 5 5.4.3 (index of refraction) interior { ior 1.33 1.5 1.33 ior.pov location <0, 0, -5> light_source { <0, 0, -10> color rgb 1.6 box { <-4, -4, 0>, <4, 4, 1> pigment { checker color rgb 1, color rgb <0, 0, 1> sphere { <0, 0, -2>, 1 pigment { color rgbf <1, 1, 1, 1> interior { ior 1.33 5.4.4 POV-Ray 5 5 5 global_settings { max_trace_level global_settings { max_trace_level 8 8 3 maxtracelevel.pov global_settings { max_trace_level 7 #declare Lens =
5.5. 61 sphere { 0, 1 pigment { color rgbf <1, 1, 1, 1> interior { ior 1.5 scale <1, 1, 0.05> location <0, 0, -5> light_source { <0, 0, -10> color rgb 1.6 box { <-4, -4, 0>, <4, 4, 1> pigment { checker color rgb 1, color rgb <0, 0, 1> Lens translate <0.4, -0.3, -1> Lens translate <-0.4, -0.3, -1.5> Lens translate <0, 0.3, -2> 7 5 5.5 5.5.1 (sky) sky_sphere { sky_sphere { pigment { color rgb <1, 1, 0> sky.pov #declare Radius = 6.4e6; // Earth radius location <0, 1, 0> look_at <0, 1.2, 1> light_source { <0, 1e10, 0> color rgb 1.6 sky_sphere { pigment { color rgb <0.3, 0.6, 1> sphere { <0, -Radius, 0>, Radius pigment { checker color rgb 1, color rgb <0, 0.4, 0>
62 5 5.5.2 realsky.pov #declare Radius = 6.4e6; // Earth radius location <0, 1, 0> look_at <0, 1.2, 1> light_source { <0, 1e10, 0> color rgb 1.6 sky_sphere { pigment { gradient y color_map { [0 color rgb <0.7, 0.9, 1>] [0.5 color rgb <0, 0.5, 1>] sphere { <0, -Radius, 0>, Radius pigment { checker color rgb 1, color rgb <0, 0.4, 0> 5.6 5.6.1 5.1.2 (finish) 2 (diffuse reflection) (specular reflection) (reflectance) finish { 5.6.2 diffuse 0 1
5.6. 63 0.6 0.4 diffuse.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 sphere { 0, 1 pigment { color rgb 1 finish { diffuse 0.4 5.6.3 reflection 0 1 0 0.2 0.4 reflection.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 box { <-5, -3, -5>, <5, -2, 5> pigment { checker color rgb 1, color rgb <0, 0.4, 0> sphere { 0, 1 pigment { color rgb 1 finish { diffuse 0.2 reflection 0.4 5.6.4 (highlight) POV-Ray phong phong_size
64 5 0 1 1 0 1 250 0 250 40 0.6 120 highlight.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 box { <-5, -3, -5>, <5, -2, 5> pigment { checker color rgb 1, color rgb <0, 0.4, 0> sphere { 0, 1 pigment { color rgb 1 finish { diffuse 0.2 reflection 0.4 phong 0.6 phong_size 120 5.7 5.7.1 5.1.2 (normal) POV-Ray 5.3 5.7.2 normal { bumps facets 5.7.3
bumps (bump) bumps 65 bumps bumps.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 sphere { 0, 1 pigment { color rgb 1 normal { bumps 0.4 scale 0.08 5.7.4 facets (facet) facets facets facets.pov location <0, 0, -3> light_source { <-5, 5, -5> color rgb 1.6 sphere { 0, 1 pigment { color rgb 1 normal { facets size 0.2 6 6.1 6.1.1 1.10 POV-Ray
66 6 colors.inc shapes.inc shapes2.inc shapesq.inc woods.inc stones.inc metals.inc golds.inc shapes.inc shapes.inc colors.inc colors.inc 6.1: (include) (include file) POV-Ray.pov POV-Ray.inc 6.1.2 #include " " #include "namako.inc" namako.inc 6.1.3 POV-Ray POV-Ray POV- Ray (standard include file) 6.1 POV-Ray Windows POV-Ray POV-Ray include colors.inc #include "colors.inc" 6.2 6.2.1
6.3. 67 colors.inc 6.2.2 colors.inc colors.inc colors.pov #include "colors.inc" #declare Box = box { <-1, -1, -1>, <1, 1, 1> location <6, 3, -4> look_at <1.4, 0, 0> light_source { <8, 10, -12> color rgb 1.6 Box pigment { SkyBlue translate <-3, 0, 0> Box pigment { Orange Box pigment { SpringGreen translate <3, 0, 0> 6.3 6.3.1 shapes.inc shapes2.inc shapesq.inc 6.3.2 shapes.inc shapes.inc shapes.inc shapes.pov #include "shapes.inc" location <0, 0, -10> light_source { <3, 2, -5> color rgb 1.6 Hyperboloid_Y pigment { color rgb 1 6.3.3 shapes2.inc shapes2.inc shapes2.inc shapes.inc
68 6 shapes2.inc shapes2.pov #include "shapes.inc" #include "shapes2.inc" location <3, 1, -2> light_source { <6, 8, -4> color rgb 1.6 Hexagon pigment { color rgb 1 6.3.4 shapesq.inc shapesq.inc shapesq.inc shapes.inc shapesq.inc Quartic_Cylinder shapesq.pov #include "shapes.inc" #include "shapesq.inc" location <0, 1, -3> light_source { <4, 8, -4> color rgb 1.6 light_source { <0, -1, -1> color rgb 0.8 Quartic_Cylinder pigment { color rgb 1 6.4 6.4.1 woods.inc stones.inc metals.inc golds.inc 6.4.2 woods.inc woods.inc woods.inc colors.inc
6.4. 69 woods.inc T_Wood10 woods.pov #include "colors.inc" #include "woods.inc" location <2, 2, -3> light_source { <6, 8, -5> color rgb 1.6 box { <-1, -1, -1>, <1, 1, 1> texture { T_Wood10 6.4.3 stones.inc stones.inc stones.inc colors.inc stones.inc T_Stone17 stones.pov #include "colors.inc" #include "stones.inc" location <2, 2, -3> light_source { <6, 8, -5> color rgb 1.6 box { <-1, -1, -1>, <1, 1, 1> texture { T_Stone17 6.4.4 metals.inc metals.inc metals.inc T_Chrome_2A metals.pov #include "metals.inc" location <0, 1, -3> look_at <0, 2, 0> light_source { <10, 10, -10> color rgb 1.6 plane { y, 0
70 6 pigment { checker color rgb 1, color rgb <0, 0.4, 0> sphere { <0, 2, 0>, 1 texture { T_Chrome_2A 6.4.5 golds.inc golds.inc golds.inc T_Gold_1A golds.pov #include "golds.inc" location <0, 1, -3> look_at <0, 2, 0> light_source { <10, 10, -10> color rgb 1.6 plane { y, 0 pigment { checker color rgb 1, color rgb <0, 0.4, 0> sphere { <0, 2, 0>, 1 texture { T_Gold_1A 6.5 6.5.1 POV-Ray 6.5.2 2 (1) (2) POV-Ray 6.5.3 #ifndef ( )
6.5. 71 POV-Ray #declare = version; #ifndef POV-Ray POV-Ray #version ; POV-Ray 6.5.4 POV-Ray #version ; #end #ifndef 6.5.5 Frame frame.inc #ifndef (Frame_Inc_Temp) #declare Frame_Inc_Temp = version; #version 3.6; #declare Frame = difference { box { <-1, -0.05, -1>, <1, 0.05, 1> box { <-0.9, -0.1, -0.9>, <0.9, 0.1, 0.9> #version Frame_Inc_Temp; #end frame.inc Frame frame.pov #include "frame.inc" location <0, 2, -2>
72 7 light_source { <0, 4, -3> color rgb 1.6 Frame pigment { color rgb 1 7 7.1 7.1.1 POV-Ray POV-Ray (iteration) (selection) 7.1.2 (condition) (true) (false) 7.1.3 (Boolean) POV-Ray 0 0 7.1.4 1.10 POV-Ray #declare Takasa = 80; 80 Takasa #declare Takasa = 230; 230 Takasa (redeclare)
7.2. 73 #declare Takasa = Takasa + 50; Takasa 50 7.2 7.2.1 (relational operator) (1) (0) 7.2.2 A > B A < B A >= B A <= B A B A B A B A B A B A B X < 100 X 100 7.2.3 A = B A!= B A B A B X = 100 X 100 7.3 7.3.1 (logical operator) POV-Ray A & B A B A B A B! A A & 7.3.2
74 7 & (logical AND operator) A B 1 & 1 1 1 & 0 0 0 & 1 0 0 & 0 0 X > 100 & X < 200 X 100 X 200 7.3.3 (logical OR operator) A B 1 1 1 1 0 1 0 1 1 0 0 0 X == 100 Y == 100 X 100 Y 100 7.3.4! (logical negation operator) A! 1 0! 0 1 7.4 7.4.1 POV-Ray #while ( ) #end (1) (2) (3) (1)
7.4. 75 #while (X < 10) #end X < 10 #declare X = 0; #while (X < 10) #declare X = X + 1; #end X 0 1 2 3 4 X 10 X < 10 10 7.4.2 x 10 sequence.pov location <9, 0, -18> look_at <9, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #while (X < 20) sphere { <X, 0, 0>, 1 pigment { color rgb 1 #declare X = X + 2; #end 7.4.3 10 colorseq.pov location <9, 0, -18> look_at <9, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare G = 0; #declare X = 0; #while (X < 20) sphere { <X, 0, 0>, 1 pigment { color rgb <1, G, 0> #declare G = G + 0.1; #declare X = X + 2; #end
76 7 7.4.4 1 10 holeseq.pov #declare HoleSequence = difference { box { <-2, -0.1, -2>, <20, 0.1, 2> union { #declare X = 0; #while (X < 20) cylinder { <X, -1, 0>, <X, 1, 0>, 0.5 #declare X = X + 2; #end location <9, 12, -14> look_at <9, 0, 0> light_source { <-50, 40, -50> color rgb 1.6 HoleSequence pigment { color rgb 1 7.5 7.5.1 7.5.2 x 10 y 10 sequsequ.pov location <9, 9, -22> look_at <9, 9, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare Y = 0; #while (Y < 20) #declare X = 0; #while (X < 20) sphere { <X, Y, 0>, 1 pigment { color rgb 1 #declare X = X + 2; #end #declare Y = Y + 2; #end
7.6. 77 7.5.3 x 10 y 10 z 10 seqseqseq.pov location <-8, 24, -18> look_at <4, 12, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare Z = 0; #while (Z < 20) #declare Y = 0; #while (Y < 20) #declare X = 0; #while (X < 20) sphere { <X, Y, Z>, 1 pigment { color rgb 1 #declare X = X + 2; #end #declare Y = Y + 2; #end #declare Z = Z + 2; #end 7.6 7.6.1 CSG 7.6.2 x 10 torusseq.pov location <9, 10, -14> look_at <9, 0, 0>
78 7 light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #while (X < 20) torus { 1.6, 0.2 pigment { color rgb 1 translate <X, 0, 0> #declare X = X + 2; #end 7.6.3 x 10 hammerseq.pov #declare Hammer = union { cylinder { <-2, 3, 0>, <2, 3, 0>, 1 box { <-0.3, 5, -0.2>, <0.3, -5, 0.2> location <27, 0, -50> look_at <27, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #while (X < 60) Hammer pigment { color rgb 1 translate <X, 0, 0> #declare X = X + 6; #end 7.7 7.7.1 7.7.2 x 5 30 circle.pov location <0, 0, -14> light_source { <-50, 50, -50> color rgb 1.6
7.7. 79 #declare Theta = 0; #while (Theta < 360) sphere { <5, 0, 0>, 1 pigment { color rgb 1 rotate <0, 0, Theta> #declare Theta = Theta + 30; #end 7.7.3 2 (spiral) spiral.pov location <0, 0, -80> light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #declare Theta = 0; #while (Theta < 1000) sphere { <X, 0, 0>, 1 pigment { color rgb 1 rotate <0, 0, Theta> #declare X = X + 0.4; #declare Theta = Theta + 11; #end 7.7.4 3 (helix) helix.pov location <20, 0, -40> look_at <20, 0, 0> light_source { <-20, 0, -50> color rgb 1.6 #declare X = 0; #declare Theta = 0; #while (Theta < 1800) sphere { <X, 10, 0>, 1 pigment { color rgb 1 rotate <Theta, 0, 0> #declare X = X + 0.3; #declare Theta = Theta + 15; #end
80 7 7.8 7.8.1 POV-Ray #if ( ) #else #end 1 2 1 2 1 2 #if (X < 10) #else #end X < 10 x 10 x 10 10 select.pov location <9, 0, -18> look_at <9, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #while (X < 20) sphere { <X, 0, 0>, 1 #if (X < 10) pigment { color rgb <0, 0, 1> #else pigment { color rgb <1, 0, 0> #end #declare X = X + 2; #end 7.8.2 #if ( ) #end
7.9. 81 #if (X < 10) #end X < 10 x 10 x 12 y 2 doornotdo.pov location <9, 0, -18> look_at <9, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #while (X < 20) sphere { <X, 0, 0>, 1 pigment { color rgb 1 #if (X = 12) translate <0, 2, 0> #end #declare X = X + 2; #end 7.9 7.9.1 3 (multibranch selection) 7.9.2 POV-Ray #switch ( ) #end 3 7.9.3 #case ( ) #break
82 7 #switch #case x 10 x 6 z 90 x 10 y 2 x 14 y 2 case.pov location <9, 0, -18> look_at <9, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #while (X < 20) sphere { <X, 0, 0>, 1 pigment { color rgb 1 #switch (X) #case (6) rotate 90*z #break #case (10) translate <0, 2, 0> #break #case (14) scale <1, 2, 1> #break #end #declare X = X + 2; #end 7.9.4 #range ( 1, 2 ) #break 1 2 #switch #case x 10 x 4 y 0.5 x 6 12 y 2 x 14 y 0.5 range.pov location <9, 0, -18> look_at <9, 0, 0> light_source { <-50, 50, -50> color rgb 1.6
7.9. 83 #declare X = 0; #while (X < 20) sphere { <X, 0, 0>, 1 pigment { color rgb 1 #switch (X) #case (4) scale <1, 0.5, 1> #break #range (6, 12) scale <1, 2, 1> #break #case (14) scale <1, 0.5, 1> #break #end #declare X = X + 2; #end 7.9.5 #else x 10 x 6 x 10 x 14 else.pov location <9, 0, -18> look_at <9, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #while (X < 20) sphere { <X, 0, 0>, 1 #switch (X) #case (6) pigment { color rgb <1, 0, 0> #break #case (10) pigment { color rgb <1, 0.5, 0> #break #case (14) pigment { color rgb <1, 1, 0> #break #else pigment { color rgb <0, 1, 1> #end #declare X = X + 2; #end
84 8 8 8.1 8.1.1 POV-Ray (function) (call) (function name) 8.1.2 POV-Ray (macro) (call) (macro name) (macro call) 8.1.3 (argument) 8.1.4 (return value) 8.1.5 (built-in function) POV-Ray POV-Ray POV-Ray POV-Ray (user-defined function) 8.1.6 POV-Ray 3 (numeric function) (string function) (vector function) 8.2 8.3 POV-Ray
8.2. 85 8.1.7 (function call) (,... ) (, ) pow pow A B A B pow(2, 4) pow 2 4 16 8.1.8 (macro call) (,... ) (, ) Namako(27, 61) Namako 27 61 8.1.9 POV-Ray POV-Ray POV-Ray 8.2 8.2.1 POV-Ray / POV-Ray
86 8 div(a, B) mod(a, B) A B A B x 25 x 6 mod.pov location <24, 0, -40> look_at <24, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare X = 0; #while (X < 50) sphere { <X, 0, 0>, 1 #if (mod(x, 6) = 0) pigment { color rgb <1, 1, 0> #else pigment { color rgb <1, 0, 0> #end #declare X = X + 2; #end 8.2.2 (random number sequence) (pseudorandom number sequence) POV-Ray seed (seed) seed 0 1 rand seed 1 x 10 y 0 2 rand.pov location <9, 0, -18> look_at <9, 0, 0> light_source { <-50, 50, -50> color rgb 1.6 #declare R = seed(91); #declare X = 0; #while (X < 20) sphere { <X, rand(r)*2, 0>, 1 pigment { color rgb 1 #declare X = X + 2; #end
8.2. 87 seed 1000 rand2.pov location <50, 50, -50> look_at <50, 50, 0> light_source { <20, 20, -100> color rgb 1.6 #declare RL = seed(63); #declare RC = seed(127); #declare N = 0; #while (N < 1000) sphere { <rand(rl)*100, rand(rl)*100, rand(rl)*100>, rand(rl)*6 pigment { color rgb <rand(rc), rand(rc), rand(rc)> #declare N = N + 1; #end RL RC 8.2.3 POV-Ray div mod seed rand abs(a) acos(a) acosh(a) asc(s) asin(a) asinh(a) atan2(a, B) atanh(a) ceil(a) cos(a) cosh(a) degrees(a) exp(a) floor(a) int(a) log(a) max( ) min( ) pow(a, B) radians(a) strcmp(s, T ) strlen(s) A A A S ASCII A A A B y/x A A A A A (2.71828182846) A A A A A B A S T S T S T S T 0 S
88 8 sin(a) sinh(a) sqrt(a) tan(a) tanh(a) val(s) vlength(v ) A A A A A S V 8.3 8.3.1 str POV-Ray str 3 1 2 0 3 2 0 2 1 2 2 2 16 str.pov location <-6, 0, -17> look_at <0, -6, 0> light_source { <-50, 40, -50> color rgb 1.6 #declare P = 1; #declare Y = 0; #while (P < 100000) text { ttf "timrom.ttf", str(p, 0, 0), 0.2, 0 pigment { color rgb 1 translate <0, Y, 0> #declare P = P * 2; #declare Y = Y - 1; #end 8.3.2 POV-Ray str chr(n) concat( ) strlwr(s) strupr(s) substr(s, P, L) N 1 S S S P 1 L vstr(n, A, S, L, P ) A N S L
8.4. 89 0 P 8.4 8.4.1 (macro declaration) #macro (,... ) #end #macro Ball(Radius) sphere { 0, Radius #end Ball Ball(7) Radius 7 7 8.4.2 #macro Hoge(A, B, C) #end Hoge(5, 7, 3) A 5 B 7 C 3 3 macrotorus.pov #macro Torus(Radius1, Radius2, Rotate, Translate, Color) torus { Radius1, Radius2 pigment { color rgb Color rotate Rotate translate Translate #end location <0, 12, -40>