4 XScreenSaver(1) XScreenSaver(1)
8 epicycle - draws a point moving around a circle which
9 moves around a cicle which...
11 S
\bSY
\bYN
\bNO
\bOP
\bPS
\bSI
\bIS
\bS
12 e
\bep
\bpi
\bic
\bcy
\byc
\bcl
\ble
\be [-display _
\bh_
\bo_
\bs_
\bt_
\b:_
\bd_
\bi_
\bs_
\bp_
\bl_
\ba_
\by_
\b._
\bs_
\bc_
\br_
\be_
\be_
\bn] [-root] [-window]
13 [-mono] [-install] [-noinstall] [-visual _
\bv_
\bi_
\bz] [-colors _
\bN]
14 [-foreground _
\bn_
\ba_
\bm_
\be] [-color-shift _
\bN] [-delay _
\bm_
\bi_
\bc_
\br_
\bo_
\bs_
\be_
\bc_
\bo_
\bn_
\bd_
\bs]
15 [-holdtime _
\bs_
\be_
\bc_
\bo_
\bn_
\bd_
\bs] [-linewidth _
\bN] [-min_circles _
\bN]
16 [-max_circles _
\bN] [-min_speed _
\bn_
\bu_
\bm_
\bb_
\be_
\br] [-max_speed _
\bn_
\bu_
\bm_
\bb_
\be_
\br]
17 [-harmonics _
\bN] [-timestep _
\bn_
\bu_
\bm_
\bb_
\be_
\br] [-divisor_poisson _
\bp_
\br_
\bo_
\bb_
\ba_
\b-
18 _
\bb_
\bi_
\bl_
\bi_
\bt_
\by] [-size_factor_min _
\bn_
\bu_
\bm_
\bb_
\be_
\br] [-size_factor_max _
\bn_
\bu_
\bm_
\b-
21 D
\bDE
\bES
\bSC
\bCR
\bRI
\bIP
\bPT
\bTI
\bIO
\bON
\bN
22 The epicycle program draws the path traced out by a point
23 on the edge of a circle. That circle rotates around a
24 point on the rim of another circle, and so on, several
25 times. The random curves produced can be simple or com-
26 plex, convex or concave, but they are always closed curves
27 (they never go in indefinitely).
29 You can configure both the way the curves are drawn and
30 the way in which the random sequence of circles is gener-
31 ated, either with command-line options or X resources.
33 O
\bOP
\bPT
\bTI
\bIO
\bON
\bNS
\bS
34 -
\b-d
\bdi
\bis
\bsp
\bpl
\bla
\bay
\by _
\bh_
\bo_
\bs_
\bt_
\b:_
\bd_
\bi_
\bs_
\bp_
\bl_
\ba_
\by_
\b._
\bs_
\bc_
\br_
\be_
\be_
\bn
35 Specifies which X display we should use (see the
36 section DISPLAY NAMES in X
\bX(1) for more information
39 -
\b-r
\bro
\boo
\bot
\bt Draw on the root window.
41 -
\b-w
\bwi
\bin
\bnd
\bdo
\bow
\bw Draw on a newly-created window. This is the
44 -
\b-m
\bmo
\bon
\bno
\bo If on a color display, pretend we're on a
45 monochrome display. If we're on a mono display,
48 -
\b-i
\bin
\bns
\bst
\bta
\bal
\bll
\bl
49 Install a private colormap for the window.
51 -
\b-n
\bno
\boi
\bin
\bns
\bst
\bta
\bal
\bll
\bl
52 Don't install a private colormap for the window.
54 -
\b-v
\bvi
\bis
\bsu
\bua
\bal
\bl _
\bv_
\bi_
\bz
55 Specify which visual to use. Legal values are the
56 name of a visual class, or the id number (decimal
57 or hex) of a specific visual. Possible choices
60 default, best, mono, monochrome, gray, grey,
64 X Version 11 27-Apr-97 1
70 XScreenSaver(1) XScreenSaver(1)
73 color, staticgray, staticcolor, truecolor,
74 grayscale, greyscale, pseudocolor, directcolor,
75 _
\bn_
\bu_
\bm_
\bb_
\be_
\br
77 If a decimal or hexadecimal number is used,
78 X
\bXG
\bGe
\bet
\btV
\bVi
\bis
\bsu
\bua
\bal
\blI
\bIn
\bnf
\bfo
\bo(3X) is consulted to obtain the
81 -
\b-c
\bco
\bol
\blo
\bor
\brs
\bs _
\bN
82 How many colors should be used (if possible). The
83 colors are chosen randomly.
85 -
\b-f
\bfo
\bor
\bre
\beg
\bgr
\bro
\bou
\bun
\bnd
\bd _
\bn_
\ba_
\bm_
\be
86 With -
\b-m
\bmo
\bon
\bno
\bo, this option selects the foreground
89 -
\b-d
\bde
\bel
\bla
\bay
\by _
\bm_
\bi_
\bc_
\br_
\bo_
\bs_
\be_
\bc_
\bo_
\bn_
\bd_
\bs
90 Specifies the delay between drawing successive
91 line segments of the path. If you do not specify
92 -
\b-s
\bsy
\byn
\bnc
\bc, some X servers may batch up several drawing
93 operations together, producing a less smooth
94 effect. This is more likely to happen in
95 monochrome mode (on monochrome servers or when
96 -
\b-m
\bmo
\bon
\bno
\bo is specified).
98 -
\b-h
\bho
\bol
\bld
\bdt
\bti
\bim
\bme
\be _
\bs_
\be_
\bc_
\bo_
\bn_
\bd_
\bs
99 When the figure is complete, _
\be_
\bp_
\bi_
\bc_
\by_
\bc_
\bl_
\be pauses this
102 -
\b-l
\bli
\bin
\bne
\bew
\bwi
\bid
\bdt
\bth
\bh _
\bN
103 Width in pixels of the body's track. Specifying
104 values greater than one may cause slower drawing.
105 The fastest value is usually zero, meaning one
108 -
\b-m
\bmi
\bin
\bn_
\b_c
\bci
\bir
\brc
\bcl
\ble
\bes
\bs _
\bN
109 Smallest number of epicycles in the figure.
111 -
\b-m
\bma
\bax
\bx_
\b_c
\bci
\bir
\brc
\bcl
\ble
\bes
\bs _
\bN
112 Largest number of epicycles in the figure.
114 -
\b-m
\bmi
\bin
\bn_
\b_s
\bsp
\bpe
\bee
\bed
\bd _
\bn_
\bu_
\bm_
\bb_
\be_
\br
115 Smallest possible value for the base speed of rev-
116 olution of the epicycles. The actual speeds of
117 the epicycles vary from this down to _
\bm_
\bi_
\bn_
\b__
\bs_
\bp_
\be_
\be_
\bd _
\b/
118 _
\bh_
\ba_
\br_
\bm_
\bo_
\bn_
\bi_
\bc_
\bs.
\b.
120 -
\b-m
\bma
\bax
\bx_
\b_s
\bsp
\bpe
\bee
\bed
\bd _
\bn_
\bu_
\bm_
\bb_
\be_
\br
121 Smallest possible value for the base speed of rev-
122 olution of the epicycles.
124 -
\b-h
\bha
\bar
\brm
\bmo
\bon
\bni
\bic
\bcs
\bs _
\bN
125 Number of possible harmonics; the larger this
126 value is, the greater the possible variety of
130 X Version 11 27-Apr-97 2
136 XScreenSaver(1) XScreenSaver(1)
139 possible speeds of epicycle.
141 -
\b-t
\bti
\bim
\bme
\bes
\bst
\bte
\bep
\bp _
\bn_
\bu_
\bm_
\bb_
\be_
\br
142 Decreasing this value will reduce the distance the
143 body moves for each line segment, possibly produc-
144 ing a smoother figure. Increasing it may produce
147 -
\b-d
\bdi
\biv
\bvi
\bis
\bso
\bor
\br_
\b_p
\bpo
\boi
\bis
\bss
\bso
\bon
\bn _
\bp_
\br_
\bo_
\bb_
\ba_
\bb_
\bi_
\bl_
\bi_
\bt_
\by
148 Each epicycle rotates at a rate which is a factor
149 of the base speed. The speed of each epicycle is
150 the base speed divided by some integer between 1
151 and the value of the -
\b-h
\bha
\bar
\brm
\bmo
\bon
\bni
\bic
\bcs
\bs option. This
152 integer is decided by starting at 1 and tossing a
153 biased coin. For each consecutive head, the value
154 is incremented by one. The integer will not be
155 incremented above the value of the -
\b-h
\bha
\bar
\brm
\bmo
\bon
\bni
\bic
\bcs
\bs
156 option. The argument of this option decides the
157 bias of the coin; it is the probability that that
158 coin will produce a head at any given toss.
160 -
\b-s
\bsi
\biz
\bze
\be_
\b_f
\bfa
\bac
\bct
\bto
\bor
\br_
\b_m
\bmi
\bin
\bn _
\bn_
\bu_
\bm_
\bb_
\be_
\br
161 Epicycles are always at least this factor smaller
164 -
\b-s
\bsi
\biz
\bze
\be_
\b_f
\bfa
\bac
\bct
\bto
\bor
\br_
\b_m
\bma
\bax
\bx _
\bn_
\bu_
\bm_
\bb_
\be_
\br
165 Epicycles are never more than this factor smaller
168 R
\bRE
\bES
\bSO
\bOU
\bUR
\bRC
\bCE
\bES
\bS
169 Option Resource Default Value
170 ------ -------- -------------
173 -holdtime .holdtime 2
174 -linewidth .lineWidth 4
175 -min_circles .minCircles 2
176 -max_circles .maxCircles 10
177 -min_speed .minSpeed 0.003
178 -max_speed .maxSpeed 0.005
179 -harmonics .harmonics 8
180 -timestep .timestep 1.0
181 -divisor_poisson .divisorPoisson 0.4
182 -size_factor_min .sizeFactorMin 1.05
183 -size_factor_max .sizeFactorMax 2.05
184 .timestepCoarseFactor 1.0
186 Before the drawing of the figure is begun, a preliminary
187 calculation of the path is done in order to scale the
188 radii of the epicycles so as to fit the figure on the
189 screen or window. For the sake of speed, This calculation
190 is done with a larger timestep than the actual drawing.
191 The time-step used is the value of the -
\b-t
\bti
\bim
\bme
\bes
\bst
\bte
\bep
\bp option
192 multiplied by the timestepCoarseFactor resource. The
196 X Version 11 27-Apr-97 3
202 XScreenSaver(1) XScreenSaver(1)
205 default value of 1 will almost always work fast enough and
206 so this resource is not available as a command-line
209 U
\bUS
\bSE
\bER
\bR I
\bIN
\bNT
\bTE
\bER
\bRF
\bFA
\bAC
\bCE
\bE
210 The program runs mostly without user interaction. When
211 running on the root window, no input is accepted. When
212 running in its own window, the program will exit if mouse
213 button 3 is pressed. If any other mouse button is
214 pressed, the current figure will be abandoned and another
217 H
\bHI
\bIS
\bST
\bTO
\bOR
\bRY
\bY
218 The geometry of epicycles was perfected by Hipparchus of
219 Rhodes at some time around 125 B.C., 185 years after the
220 birth of Aristarchus of Samos, the inventor of the helio-
221 centric universe model. Hipparchus applied epicycles to
222 the Sun and the Moon. Ptolemy of Alexandria went on to
223 apply them to what was then the known universe, at around
224 150 A.D. Copernicus went on to apply them to the helio-
225 centric model at the beginning of the sixteenth century.
226 Johannes Kepler discovered that the planets actually move
227 in elliptical orbits in about 1602. The inverse-square
228 law of gravity was suggested by Boulliau in 1645. Isaac
229 Newton's _
\bP_
\br_
\bi_
\bn_
\bc_
\bi_
\bp_
\bi_
\ba _
\bM_
\ba_
\bt_
\bh_
\be_
\bm_
\ba_
\bt_
\bi_
\bc_
\ba was published in 1687, and
230 proved that Kepler's laws derived from Newtonian gravita-
234 The colour selection is re-done for every figure. This
235 may generate too much network traffic for this program to
236 work well over slow or long links.
238 C
\bCO
\bOP
\bPY
\bYR
\bRI
\bIG
\bGH
\bHT
\bT
239 Copyright (C) 1998, James Youngman. Permission to use,
240 copy, modify, distribute, and sell this software and its
241 documentation for any purpose is hereby granted without
242 fee, provided that the above copyright notice appear in
243 all copies and that both that copyright notice and this
244 permission notice appear in supporting documentation. No
245 representations are made about the suitability of this
246 software for any purpose. It is provided "as is" without
247 express or implied warranty.
249 A
\bAU
\bUT
\bTH
\bHO
\bOR
\bR
250 James Youngman <jay@gnu.org>, April 1998.
262 X Version 11 27-Apr-97 4