From http://www.jwz.org/xscreensaver/xscreensaver-5.35.tar.gz
[xscreensaver] / hacks / config / projectiveplane.xml
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2
3 <screensaver name="projectiveplane" _label="ProjectivePlane" gl="yes">
4
5   <command arg="-root"/>
6
7   <video href="https://www.youtube.com/watch?v=Zg6ONPUTwUQ"/>
8
9   <hgroup>
10     <select id="display-mode">
11       <option id="random"      _label="Random surface"/>
12       <option id="wire"        _label="Wireframe mesh"      arg-set="-mode wireframe"/>
13       <option id="surface"     _label="Solid surface"       arg-set="-mode surface"/>
14       <option id="transparent" _label="Transparent surface" arg-set="-mode transparent"/>
15     </select>
16
17     <select id="appearance">
18       <option id="random" _label="Random pattern"/>
19       <option id="solid"  _label="Solid object"    arg-set="-appearance solid"/>
20       <option id="bands"  _label="Distance bands"  arg-set="-appearance distance-bands"/>
21       <option id="bands"  _label="Direction bands" arg-set="-appearance direction-bands"/>
22     </select>
23
24     <select id="colors">
25       <option id="random"   _label="Random coloration"/>
26       <option id="twosided" _label="Two-sided"        arg-set="-colors two-sided"/>
27       <option id="rainbow"  _label="Distance colors"  arg-set="-colors distance"/>
28       <option id="rainbow"  _label="Direction colors" arg-set="-colors direction"/>
29       <option id="depth"    _label="4d depth colors"  arg-set="-colors depth"/>
30     </select>
31
32     <select id="projection3d">
33       <option id="random"          _label="Random 3D"/>
34       <option id="perspective-3d"  _label="Perspective 3D"  arg-set="-projection-3d perspective"/>
35       <option id="orthographic-3d" _label="Orthographic 3D" arg-set="-projection-3d orthographic"/>
36     </select>
37
38     <select id="projection4d">
39       <option id="random"          _label="Random 4D"/>
40       <option id="perspective-4d"  _label="Perspective 4D"  arg-set="-projection-4d perspective"/>
41       <option id="orthographic-4d" _label="Orthographic 4D" arg-set="-projection-4d orthographic"/>
42     </select>
43   </hgroup>
44
45   <hgroup>
46     <vgroup>
47      <hgroup>
48       <number id="speed-wx" type="slider" arg="-speed-wx %"
49               _label="WX speed"
50               _low-label="-4" _high-label="4"
51               low="-4.0" high="4.0" default="1.1"/>
52      </hgroup>
53
54      <hgroup>
55       <number id="speed-wy" type="slider" arg="-speed-wy %"
56               _label="WY speed"
57               _low-label="-4" _high-label="4"
58               low="-4.0" high="4.0" default="1.3"/>
59      </hgroup>
60
61      <hgroup>
62       <number id="speed-wz" type="slider" arg="-speed-wz %"
63               _label="WZ speed"
64               _low-label="-4" _high-label="4"
65               low="-4.0" high="4.0" default="1.5"/>
66      </hgroup>
67     </vgroup>
68
69     <vgroup>
70      <hgroup>
71       <number id="speed-xy" type="slider" arg="-speed-xy %"
72               _label="XY speed"
73               _low-label="-4" _high-label="4"
74               low="-4.0" high="4.0" default="1.7"/>
75      </hgroup>
76
77      <hgroup>
78       <number id="speed-xz" type="slider" arg="-speed-xz %"
79               _label="XZ speed"
80               _low-label="-4" _high-label="4"
81               low="-4.0" high="4.0" default="1.9"/>
82      </hgroup>
83
84      <hgroup>
85       <number id="speed-yz" type="slider" arg="-speed-yz %"
86               _label="YZ speed"
87               _low-label="-4" _high-label="4"
88               low="-4.0" high="4.0" default="2.1"/>
89      </hgroup>
90     </vgroup>
91
92     <vgroup>
93      <hgroup>
94      <number id="walk-direction" type="slider" arg="-walk-direction %"
95              _label="Walk dir     "
96              _low-label="-180" _high-label="180"
97              low="-180.0" high="180.0" default="83.0"/>
98      </hgroup>
99
100      <hgroup>
101      <number id="walk-speed" type="slider" arg="-walk-speed %"
102              _label="Walk speed"
103              _low-label="1" _high-label="100"
104              low="1.0" high="100.0" default="20.0"/>
105      </hgroup>
106
107      <hgroup>
108      <number id="delay" type="slider" arg="-delay %"
109              _label="Frame rate" _low-label="Low" _high-label="High"
110              low="0" high="100000" default="10000"
111              convert="invert"/>
112      </hgroup>
113     </vgroup>
114   </hgroup>
115
116   <hgroup>
117     <select id="view-mode">
118       <option id="walk"      _label="Random motion"/>
119       <option id="walk"      _label="Walk"          arg-set="-view-mode walk"/>
120       <option id="turn"      _label="Turn"          arg-set="-view-mode turn"/>
121       <option id="walk-turn" _label="Walk and turn" arg-set="-view-mode walk-turn"/>
122     </select>
123
124     <boolean id="orientation-marks" _label="Show orientation marks"
125               arg-set="-orientation-marks"/>
126
127     <boolean id="showfps" _label="Show frame rate" arg-set="-fps"/>
128
129     <xscreensaver-updater />
130   </hgroup>
131
132
133
134   <_description>
135 A 4D embedding of the real projective plane.
136
137 You can walk on the surface of the real projective plane or rotate it
138 in 4D or walk on it while it rotates in 4D.  Inspired by Thomas
139 Banchoff's book "Beyond the Third Dimension: Geometry, Computer
140 Graphics, and Higher Dimensions", Scientific American Library, 1990.
141
142 https://en.wikipedia.org/wiki/Real_projective_plane
143 https://en.wikipedia.org/wiki/Roman_surface
144 https://en.wikipedia.org/wiki/Cross_cap
145 https://en.wikipedia.org/wiki/Moebius_strip
146 http://mathworld.wolfram.com/RealProjectivePlane.html
147 http://mathworld.wolfram.com/RomanSurface.html
148 http://mathworld.wolfram.com/Cross-Cap.html
149 http://mathworld.wolfram.com/MoebiusStrip.html
150
151 Written by Carsten Steger; 2014.
152   </_description>
153 </screensaver>