[12202] | 1 | .TH XScreenSaver 1 "7-mar-93" "X Version 11" |
---|
| 2 | .SH NAME |
---|
| 3 | maze \- an automated X11 demo repeatedly creating and solving a random maze |
---|
| 4 | .SH SYNOPSIS |
---|
| 5 | .B maze |
---|
| 6 | [\-display \fIhost:display.screen\fP] [\-foreground \fIcolor\fP] [\-background \fIcolor\fP] [\-window] [\-root] [\-install] [\-visual \fIvisual\fP] [\-grid\-size \fIpixels\fP] [\-live\-color \fIcolor\fP] [\-dead\-color \fIcolor\fP] [\-solve\-delay \fIusecs\fP] [\-pre\-delay \fIusecs\fP] [\-post\-delay \fIusecs\fP] [\-generator \fIinteger\fP] [\-max\-length \fIinteger\fP] [\-bridge] [\-no\-bridge] |
---|
| 7 | .SH DESCRIPTION |
---|
| 8 | The \fImaze\fP program creates a "random" maze and then solves it with |
---|
| 9 | graphical feedback. |
---|
| 10 | .SH OPTIONS |
---|
| 11 | .I maze |
---|
| 12 | accepts the following options: |
---|
| 13 | .TP 8 |
---|
| 14 | .B \-window |
---|
| 15 | Draw on a newly-created window. This is the default. |
---|
| 16 | .TP 8 |
---|
| 17 | .B \-root |
---|
| 18 | Draw on the root window. |
---|
| 19 | .TP 8 |
---|
| 20 | .B \-install |
---|
| 21 | Install a private colormap for the window. |
---|
| 22 | .TP 8 |
---|
| 23 | .B \-visual \fIvisual\fP |
---|
| 24 | Specify which visual to use. Legal values are the name of a visual class, |
---|
| 25 | or the id number (decimal or hex) of a specific visual. |
---|
| 26 | .TP 8 |
---|
| 27 | .B \-grid\-size \fIpixels\fP |
---|
| 28 | The size of each block of the maze, in pixels; default is 0, meaning |
---|
| 29 | pick a random grid size. |
---|
| 30 | .TP 8 |
---|
| 31 | .B \-live\-color \fIcolor\fP |
---|
| 32 | The color of the path. |
---|
| 33 | .TP 8 |
---|
| 34 | .B \-dead\-color \fIcolor\fP |
---|
| 35 | The color of the failed path (it is also stippled with a 50% pattern.) |
---|
| 36 | .TP 8 |
---|
| 37 | .B \-skip\-color \fIcolor\fP |
---|
| 38 | The maze solver will choose to not go down a path if it can "see" (in a |
---|
| 39 | straight line) that it is a dead end. This is the color to use for paths |
---|
| 40 | that are skipped for this reason. |
---|
| 41 | .TP 8 |
---|
| 42 | .B \-surround\-color \fIcolor\fP |
---|
| 43 | If the maze solver ever completely encloses an area within the maze, then |
---|
| 44 | it knows that the exit is not in there (and in fact the interior of that |
---|
| 45 | area might not even be reachable.) It will mark out those cells using this |
---|
| 46 | color. |
---|
| 47 | .TP 8 |
---|
| 48 | .B \-solve\-delay \fIinteger\fP |
---|
| 49 | Delay (in microseconds) between each step of the solution path. |
---|
| 50 | Default 5000, or about 1/200th second. |
---|
| 51 | .TP 8 |
---|
| 52 | .B \-pre\-delay \fIinteger\fP |
---|
| 53 | Delay (in microseconds) between generating a maze and starting to solve it. |
---|
| 54 | Default 2000000 (2 seconds.) |
---|
| 55 | .TP 8 |
---|
| 56 | .B \-post\-delay \fIinteger\fP |
---|
| 57 | Delay (in microseconds) after solving a maze and before generating a new one. |
---|
| 58 | Default 4000000 (4 seconds.) |
---|
| 59 | .TP 8 |
---|
| 60 | .B \-generator \fInum\fP |
---|
| 61 | Sets the algorithm that will be used to generate the mazes. The |
---|
| 62 | default is \-1, which randomly selects an algorithm for each maze that |
---|
| 63 | is generated. Generator 0 is the original one, and works by walking |
---|
| 64 | around randomly until we hit a place we've been before, then |
---|
| 65 | backtracking and trying a new direction somewhere. Generator 1 picks a |
---|
| 66 | random spot in the maze, then draws a straight wall from that spot in |
---|
| 67 | a random direction until it hits another wall (and continues until the |
---|
| 68 | maze is complete). Generator 2 is based on sets. Initially all cells |
---|
| 69 | are in different sets. Then two neighboring cells are chosen and if |
---|
| 70 | they are in different sets, their sets are joined. If they were in the |
---|
| 71 | same set, a wall is built between them. This continues until the maze is |
---|
| 72 | complete. |
---|
| 73 | |
---|
| 74 | All generators generate mazes with a certain 'characteristic'. See if you |
---|
| 75 | can spot them! |
---|
| 76 | .TP 8 |
---|
| 77 | .B \-max\-length \fInum\fP |
---|
| 78 | Controls the maximum length of walls drawn in one go by generator 1. |
---|
| 79 | .TP 8 |
---|
| 80 | .B \-bridge |
---|
| 81 | .TP 8 |
---|
| 82 | .B \-no\-bridge |
---|
| 83 | Controls whether or not a 'bridge' will appear over the logo. |
---|
| 84 | .PP |
---|
| 85 | Clicking the mouse in the maze window controls it. |
---|
| 86 | .TP 16 |
---|
| 87 | .B "LeftButton |
---|
| 88 | Clears the window and restarts maze. |
---|
| 89 | .TP 16 |
---|
| 90 | .B MiddleButton |
---|
| 91 | Pause or unpause the program. |
---|
| 92 | .TP 16 |
---|
| 93 | .B RightButton |
---|
| 94 | Exit. |
---|
| 95 | .SH BUGS |
---|
| 96 | Expose events force a restart of maze. |
---|
| 97 | |
---|
| 98 | Mouse actions are based on "raw" values (Button1, Button2 and Button3) |
---|
| 99 | instead of using the pointer map. |
---|
| 100 | .SH ENVIRONMENT |
---|
| 101 | .PP |
---|
| 102 | .TP 8 |
---|
| 103 | .B DISPLAY |
---|
| 104 | to get the default host and display number. |
---|
| 105 | .TP 8 |
---|
| 106 | .B XENVIRONMENT |
---|
| 107 | to get the name of a resource file that overrides the global resources |
---|
| 108 | stored in the RESOURCE_MANAGER property. |
---|
| 109 | .SH SEE ALSO |
---|
| 110 | .BR X (1), |
---|
| 111 | .BR xscreensaver (1) |
---|
| 112 | .SH COPYRIGHT |
---|
| 113 | .PP |
---|
| 114 | Copyright \(co 1988 by Sun Microsystems, Inc. Mountain View, CA. |
---|
| 115 | .PP |
---|
| 116 | All Rights Reserved |
---|
| 117 | .PP |
---|
| 118 | Permission to use, copy, modify, and distribute this software and its |
---|
| 119 | documentation for any purpose and without fee is hereby granted, provided that |
---|
| 120 | the above copyright notice appear in all copies and that both that copyright |
---|
| 121 | notice and this permission notice appear in supporting documentation, and that |
---|
| 122 | the names of Sun or MIT not be used in advertising or publicity pertaining to |
---|
| 123 | distribution of the software without specific prior written permission. Sun |
---|
| 124 | and M.I.T. make no representations about the suitability of this software for |
---|
| 125 | any purpose. It is provided "as is" without any express or implied warranty. |
---|
| 126 | .PP |
---|
| 127 | SUN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL |
---|
| 128 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN |
---|
| 129 | NO EVENT SHALL SUN BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL |
---|
| 130 | DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, |
---|
| 131 | WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING |
---|
| 132 | OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
---|
| 133 | .SH AUTHOR(s) |
---|
| 134 | .nf |
---|
| 135 | Zack Weinberg [ Smarter maze-solver ] zack@rabi.phys.columbia.edu |
---|
| 136 | Johannes Keukelaar [ Generators 1 and 2 ] johannes@nada.kth.se |
---|
| 137 | Royal Institute of Technology, Stockholm, Sweden |
---|
| 138 | Jim Randell [ XScreenSaver version ] jmr@mddjmr.fc.hp.com |
---|
| 139 | HPLabs, Bristol |
---|
| 140 | Richard Hess [ X11 extensions ] {...}!uunet!cimshop!rhess |
---|
| 141 | Consilium, Mountain View, CA |
---|
| 142 | Dave Lemke [ X11 version ] lemke@sun.COM |
---|
| 143 | Sun MicroSystems, Mountain View, CA |
---|
| 144 | Martin Weiss [ SunView version ] |
---|
| 145 | Sun MicroSystems, Mountain View, CA |
---|
| 146 | .fi |
---|