summary refs log tree commit diff
path: root/pgmcrater.html
blob: 88c2a4eeeba3870b426303ae1a06e0262b0388d3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML><HEAD><TITLE>Pgmcrater User Manual</TITLE></HEAD>
<BODY>
<H1>pgmcrater</H1>
Updated: 20 November 2008
<BR>
<A HREF="#index">Table Of Contents</A>

<H2>NAME</H2>

pgmcrater - create cratered terrain by fractal forgery

<H2 id="synopsis">SYNOPSIS</H2>

<B>pgmcrater</B>

[<B>-number</B> <I>n</I>]

[<B>-height</B>|<B>-ysize</B> <I>s</I>]

[<B>-width</B>|<B>-xsize</B> <I>s</I>]

[<B>-gamma</B> <I>g</I>]


<H2 id="description">DESCRIPTION</H2>

<p>This program is part of <a href="index.html">Netpbm</a>.

<P><B>pgmcrater</B> creates a PGM image which mimics cratered terrain.
The PGM image is created by simulating the impact of a given number of
craters with random position and size, then rendering the resulting
terrain elevations based on a light source shining from one side of
the screen.  The size distribution of the craters is based on a power
law which results in many more small craters than large ones.  The
number of craters of a given size varies as the reciprocal of the area
as described on pages 31 and 32 of Peitgen and Saupe[1]; cratered
bodies in the Solar System are observed to obey this relationship.
The formula used to obtain crater radii governed by this law from a
uniformly distributed pseudorandom sequence was developed by Rudy
Rucker.

<P>High resolution images with large numbers of craters often benefit
from being piped through <B>pnmsmooth</B>.  The averaging performed by
this process eliminates some of the jagged pixels and lends a mellow
``telescopic image'' feel to the overall picture.

<P><B>pgmcrater</B> simulates only small craters, which are
hemispherical in shape (regardless of the incidence angle of the
impacting body, as long as the velocity is sufficiently high).  Large
craters, such as Copernicus and Tycho on the Moon, have a ``walled
plain'' shape with a cross-section more like:

<PRE>
                /\                            /\
<BR>
          _____/  \____________/\____________/  \_____
</PRE>


Larger craters should really use this profile, including the central
peak, and totally obliterate the pre-existing terrain.

<p>The randomness in the image is limited before Netpbm 10.37 (December
2006) -- if you run the program twice in the same second, you may get
identical output.

<H2 id="options">OPTIONS</H2>

<P>All options can be abbreviated to their shortest unique prefix.

<DL COMPACT>
<DT><B>-number</B> <I>n</I>

<DD>Causes <I>n</I> craters to be generated.  If no <B>-number</B>
specification is given, 50000 craters will be generated.  Don't expect
to see them all!  For every large crater there are many, many more
tiny ones which tend simply to erode the landscape.  In general, the
more craters you specify the more realistic the result; ideally you
want the entire terrain to have been extensively turned over again and
again by cratering.  High resolution images containing five to ten
million craters are stunning but take quite a while to create.

<DT><B>-height</B> <I>height</I>

<DD>Sets the height of the generated image to <I>height</I> pixels.
The default height is 256 pixels.

<DT><B>-width</B> <I>width</I>

<DD>Sets the width of the generated image to <I>width</I> pixels.  The
default width is 256 pixels.

<DT><B>-xsize</B> <I>width</I>

<DD>Sets the width of the generated image to <I>width</I> pixels.  The
default width is 256 pixels.

<DT><B>-ysize</B> <I>height</I>

<DD>Sets the height of the generated image to <I>height</I> pixels.
The default height is 256 pixels.

<DT><B>-gamma</B> <I>factor</I>

<DD>The specified <I>factor</I> is used to gamma adjust the image in
the same manner as performed by <B>pnmgamma</B>.  The default value is
1.0, which results in a medium contrast image.  Values larger than 1
lighten the image and reduce contrast, while values less than 1 darken
the image, increasing contrast.

<P>Note that this is separate from the gamma correction that is part
of the definition of the PGM format.  The image <B>pnmgamma</B>
generates is a genuine, gamma-corrected PGM image in any case.  This
option simply changes the contrast and may compensate for a display
device that does not correctly render PGM images.

</DL>

<H2 id="designnotes">DESIGN NOTES</H2>

The<B>-gamma</B> option isn't really necessary since you can achieve
the same effect by piping the output from <B>pgmcrater</B> through
<B>pnmgamma</B>.  However, <B>pgmcrater</B> performs an internal gamma
map anyway in the process of rendering the elevation array into the
PGM format, so there's no additional overhead in allowing an
additional gamma adjustment.

<P>Real craters have two distinct morphologies.

<H2 id="seealso">SEE ALSO</H2>

<B><A HREF="pnmgamma.html">pnmgamma</A></B>,

<B><A HREF="pnmsmooth.html">pnmsmooth</A></B>

<B><A HREF="pgm.html">pgm</A></B>,

<DL COMPACT>
<DT>[1]
<DD>Peitgen, H.-O., and Saupe, D. eds., The Science Of Fractal Images,
New York: Springer Verlag, 1988.

</DL>

<A NAME="lbAH">&nbsp;</A>
<H2>AUTHOR</H2>

<PRE>
John Walker
Autodesk SA
Avenue des Champs-Montants 14b
CH-2074 MARIN
Suisse/Schweiz/Svizzera/Svizra/Switzerland
    <B>Usenet:</B><A HREF="mailto:kelvin@Autodesk.com">kelvin@Autodesk.com</A>
    <B>Fax:</B>038/33 88 15
    <B>Voice:</B>038/33 76 33
</PRE>

<P>Permission to use, copy, modify, and distribute this software and
its documentation for any purpose and without fee is hereby granted,
without any conditions or restrictions.  This software is provided
&quot;as is&quot; without express or implied warranty.

<H2 id="history">HISTORY</H2>


<P>The original 1991 version of this manual contains the following:

<h3>PLUGWARE!</h3>

<p>If you like this kind of stuff, you may also enjoy &quot;James Gleick's
Chaos--The Software&quot; for MS-DOS, available for $59.95 from your
local software store or directly from Autodesk, Inc., Attn: Science
Series, 2320 Marinship Way, Sausalito, CA 94965, USA.  Telephone:
(800) 688-2344 toll-free or, outside the U.S. (415) 332-2344 Ext
4886.  Fax: (415) 289-4718.  &quot;Chaos--The Software&quot; includes a more
comprehensive fractal forgery generator which creates
three-dimensional landscapes as well as clouds and planets, plus five
more modules which explore other aspects of Chaos.  The user guide of
more than 200 pages includes an introduction by James Gleick and
detailed explanations by Rudy Rucker of the mathematics and algorithms
used by each program.

<HR>
<H2 id="index">Table Of Contents</H2>
<UL>
<LI><A HREF="#synopsis">SYNOPSIS</A>
<LI><A HREF="#description">DESCRIPTION</A>
<LI><A HREF="#options">OPTIONS</A>
<LI><A HREF="#designnotes">DESIGN NOTES</A>
<LI><A HREF="#seealso">SEE ALSO</A>
<LI><A HREF="#author">AUTHOR</A>
<LI><A HREF="#history">HISTORY</A>
</UL>
</BODY>
</HTML>