voronoi [-display host:display.screen] [-visual visual] [-window] [-root] [-points int] [-point-size int] [-point-speed ratio] [-point-delay seconds] [-zoom-speed ratio] [-zoom-delay seconds] [-fps]
Draws a randomly-colored Voronoi tessellation, and periodically zooms in and adds new points. The existing points also wander around.
There are a set of control points on the plane, each at the center of a colored cell. Every pixel within that cell is closer to that cell's control point than to any other control point. That is what determines the cell's shapes.
When running in a window, you can click to insert a new point at the mouse position. Clicking on an existing point lets you drag it around.
This implementation takes advantage of the OpenGL depth buffer to compute the cells for us, by rendering the intersection of overlapping cones in an orthographic plane.
- -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.
Draw on a newly-created window. This is the default.
Draw on the root window.
- -points int
How many points to add each time we zoom in.
- -point-size int
How big to draw the stars, in pixels. 0 for no stars.
- -point-speed ratio
How fast the points should wander. Less than 1 for slower, greater than 1 for faster.
- -point-delay seconds
How quickly to insert new points, when adding.
- -zoom-speed ratio
How fast to zoom in. Less than 1 for slower, greater than 1 for faster.
- -zoom-delay seconds
Zoom in every this-many seconds.
Display the current frame rate, CPU load, and polygon count.
to get the default host and display number.
to get the name of a resource file that overrides the global resources stored in the RESOURCE_MANAGER property.
Copyright © 2007 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.