hilbert - 3D Hilbert fractal.
hilbert [-display host:display.screen] [-visual visual]
[-window] [-root] [-delay number] [-speed ratio] [-depth
number] [-spin] [-wander] [-2d] [-3d] [-closed] [-open] [-max-depth
number] [-thickness ratio] [-wireframe] [-fps]
This draws the recursive Hilbert space-filling curve, in both 2D and 3D
variants. It incrementally animates the growth and recursion to the maximum
depth, then unwinds it back.
The Hilbert path is a single contiguous line that can fill a
volume without crossing itself. As a data structure, Hilbert paths are
useful because ordering along the curve preserves locality: points that
close together along the curve are also close together in space. The
converse is often, but not always, true. The coloration reflects this.
- -visual visual
- Specify which visual to use. Legal values are the name of a visual class,
or the id number (decimal or hex) of a specific visual.
- -window
- Draw on a newly-created window. This is the default.
- -root
- Draw on the root window.
- -delay number
- Per-frame delay, in microseconds. Default: 30000 (0.03 seconds.).
- -speed number
- How fast the animation should run. Less than 1 for slower, greater than 1
for faster.
- -max-depth number
- Max depth to descend. Default: 5, which peaks at around half a million
polygons.
- -spin
- -no-spin Whether to rotate the object. Default: true.
- -wander
- -no-wander Whether to wander the object around on the screen.
Default: false;
- -2d
- -3d Whether to draw the 2D or 3D variant. Default: random.
- -closed
- -open Whether to draw the open or closed-path variant. Default:
random.
- -thickness ratio
- How thick the lines should be. Default: 0.25.
- -wireframe
- Render in wireframe instead of solid.
- -fps
- Display the current frame rate, CPU load, and polygon count.
- DISPLAY
- to get the default host and display number.
- XENVIRONMENT
- to get the name of a resource file that overrides the global resources
stored in the RESOURCE_MANAGER property.
Copyright © 2011 by Jamie Zawinski. Permission to use, copy, modify,
distribute, and sell this software and its documentation for any purpose is
hereby granted without fee, provided that the above copyright notice appear in
all copies and that both that copyright notice and this permission notice
appear in supporting documentation. No representations are made about the
suitability of this software for any purpose. It is provided "as is"
without express or implied warranty.