ftp://ftp.linux.ncsu.edu/mirror/ftp.redhat.com/pub/redhat/linux/enterprise/4/en/os...
[xscreensaver] / hacks / config / attraction.xml
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2
3 <screensaver name="attraction" _label="Attraction">
4
5   <command arg="-root"/>
6
7   <select id="mode">
8     <option id="balls"    _label="Balls"    arg-set="-mode balls"/>
9     <option id="lines"    _label="Lines"    arg-set="-mode lines"/>
10     <option id="tails"    _label="Tails"    arg-set="-mode tails"/>
11     <option id="polygons" _label="Polygons" arg-set="-mode polygons"/>
12     <option id="splines"  _label="Splines"  arg-set="-mode splines"/>
13     <option id="fsplines" _label="Filled Splines"
14                                             arg-set="-mode filled-splines"/>
15   </select>
16
17   <select id="wallmode">
18     <option id="walls"   _label="Bounce Off Walls"/>
19     <option id="nowalls" _label="Ignore Screen Edges" arg-set="-nowalls"/>
20   </select>
21
22   <hgroup>
23     <number id="points" type="spinbutton" arg="-points %"
24               _label="Ball Count" low="0" high="200" default="0"/>
25     <number id="size" type="slider" arg="-size %"
26               _low-label="Ball Mass" _high-label="High"
27               low="0" high="100" default="0"/>
28   </hgroup>
29
30   <number id="viscosity" type="slider" arg="-viscosity %"
31           _label="Environmental Viscosity"
32           _low-label="Low" _high-label="High"
33           low="0.0" high="1.0" default="1.0"
34           convert="invert"/>
35
36   <number id="threshold" type="slider" arg="-threshold %"
37           _label="Repulsion Threshold"
38           _low-label="Small" _high-label="Large"
39           low="0" high="500" default="100"/>
40
41   <number id="segments" type="slider" arg="-segments %"
42           _label="Trail Length" _low-label="Short" _high-label="Long"
43           low="2" high="1000" default="500"/>
44
45   <number id="delay" type="slider" arg="-delay %"
46           _label="Speed" _low-label="Slow" _high-label="Fast"
47           low="0" high="40000" default="10000"
48           convert="invert"/>
49
50   <number id="ncolors" type="slider" arg="-colors %"
51             _label="Number of Colors" _low-label="Two" _high-label="Many"
52             low="1" high="255" default="200"/>
53
54   <number id="color_contrast" type="slider" arg="-color-shift %"
55           _label="Color Contrast" _low-label="Low" _high-label="High"
56            low="0" high="25" default="3"/>
57
58   <boolean id="orbit" _label="Orbital Mode" arg-set="-orbit"/>
59   <hgroup>
60     <number id="radius" type="spinbutton" arg="-radius %"
61               _label="Radius" low="0" high="1000" default="0"/>
62     <number id="vmult" type="slider" arg="-vmult %"
63             _low-label="Outward" _high-label="Inward"
64              low="-5.0" high="5.0" default="0.9"/>
65   </hgroup>
66
67   <!-- #### -vx [?] -->
68   <!-- #### -vy [?] -->
69   <!-- #### -glow -->
70   <!-- #### -nomaxspeed -->
71   <!-- #### -correct-bounce -->
72   <!-- #### -graphmode [none] -->
73
74   <_description>
75 Like qix, this uses a simple simple motion model to generate many
76 different display modes.  The control points attract each other up to
77 a certain distance, and then begin to repel each other.  The
78 attraction/repulsion is proportional to the distance between any two
79 particles, similar to the strong and weak nuclear forces.
80
81 One of the most interesting ways to watch this hack is simply as
82 bouncing balls, because their motions and interactions with each
83 other are so odd.  Sometimes two balls will get into a tight orbit
84 around each other, to be interrupted later by a third, or by the edge
85 of the screen.  It looks quite chaotic.
86
87 Written by Jamie Zawinski, based on Lisp code by John Pezaris.
88   </_description>
89 </screensaver>