Basic Options Screen The "passes option" ( options screen or "passes=" parameter) selects single-pass, dual-pass, or solid-guessing (default) mode. This option applies to most fractal types. Single-pass mode ("1") draws the screen pixel by pixel. Dual-pass ("2") generates a "coarse" screen first as a preview using 2x2-pixel boxes, and then generates the rest of the dots with a second pass. Solid-guessing ("g") is the default. It performs from two to four visible passes - more in higher resolution modes. Its first visible pass is actually two passes - one pixel per 4x4, 8x8, or 16x16 pixel box is generated, and the guessing logic is applied to fill in the blocks at the next level (2x2, 4x4, or 8x8). Subsequent passes fill in the display at the next finer resolution, skipping blocks which are surrounded by the same color. Solid-guessing can guess wrong, but it sure guesses quickly! Boundary Tracing ("b"), which only works with fractal types (such as the Mandelbrot set, but not the Newton type) that do not contain "islands" of colors, finds a color "boundary", traces it around the screen, and then "blits" in the color over the enclosed area. Tesseral ("t") is a sort of "super-solid-guessing" option that successively divides the image into subsections. It's actually slower than the solid-guessing algorithm, but it looks neat, so we left it in. The "fillcolor=" option in the screen or on the command line sets a fixed color to be used by the Boundary Tracing and Tesseral calculations for filling in defined regions. The effect of this is to show off the boundaries of the areas delimited by these two methods. Floating Point Algorithm - the original FRACTINT on a PC uses assembly language integer math routines that are not required in xmfract. Iterations - Reset the iteration maximum (the number of iterations at which the program gives up and says 'OK, this point seems to be part of the set in question and should be colored [insidecolor]') from the default 127. Values range from 10 to 32767 (super-high iteration limits like 30000 are useful when using logarithmic palettes). See "The Mandelbrot Set" for a description of the iteration method of calculating fractals. "maxiter=" can also be used to adjust the number of orbits plotted for 3D "attractor" fractal types such as lorenz3d and kamtorus. inside=nnn|bof60|bof61|zmag|attractor|epscross|startrail|period Set the color of the interior: for example, "inside=0" makes the M-set "lake" a stylish basic black. A setting of -1 makes inside=maxiter. Three more options reveal hidden structure inside the lake. Inside=bof60 and inside=bof61, are named after the figures on pages 60 and 61 of "Beauty of Fractals". See "Inside=bof60|bof61|zmag|period" for a brilliant explanation of what these do! Inside=zmag is a method of coloring based on the magnitude of Z after the maximum iterations have been reached. The affect along the edges of the Mandelbrot is like thin-metal welded sculpture. Inside=epscross colors pixels green or yellow according to whether their orbits swing close to the Y-axis or X-axis, respectively. Inside=starcross has a coloring scheme based on clusters of points in the orbits. Best with outside=. For more information, see "Inside=epscross|startrail". Inside=period colors pixels according to the period of their eventual orbit. Note that the "Look for finite attractor" option on the options screen will override the selected inside option if an attractor is found - see "Finite Attractors". outside=nnn|iter|real|imag|summ|mult The classic method of coloring outside the fractal is to color according to how many iterations were required before Z reached the bailout value, usually 4. This is the method used when outside=iter. However, when Z reaches bailout the real and imaginary components can be at very diferent values. outside=real and outside=imag color using the iteration value plus the real or imaginary values. outside=summ uses the sum of all these values. These options can give a startling 3d quality to otherwise flat images and can change some boring images to wonderful ones. outside=mult colors by multiplying the iteration by real divided by imaginary. There was no mathematical reason for this, it just seemed like a good idea. Outside=nnn sets the color of the exterior to some number of your choosing: for example, "outside=1" makes all points not inside the fractal set to color 1 (blue). Note that defining an outside color forces any image to be a two-color one: either a point is inside the set, or it's outside it. Orbit delay - Slows up the display of orbits using the command for folks with hot new computers. Units are in 1/10000 seconds per orbit point. Orbit delay=100 therefore allows you to see each pixel's orbit point for about one millisecond. For best display of orbits, try passes=1 and a moderate resolution such as 320x200. Logarithmic Palettes and Color Ranges - By default, xmfract maps iterations to colors 1:1. I.e. if the calculation for a fractal "escapes" (exceeds the bailout value) after N iterations, the pixel is colored as color number N. If N is greater than the number of colors available, it wraps around. So, if you are using a 16-color display, and you are using the default maximum iteration count of 127, your image will run through the 16-color palette 127/16 = 7.94 times. When you use Logarithmic palettes, the entire range of iteration values is compressed to map to one span of the color range. This results in spectacularly different images if you are using a high iteration limit near the current iteration maximum of 32000 and are zooming in on an area near a "lakelet". When using a compressed palette in a 256 color mode, we suggest changing your colors from the usual defaults. The last few colors in the default IBM VGA color map are black. This results in points nearest the "lake" smearing into a single dark band, with little contrast from the blue (by default) lake. xmfract has a number of types of compressed palette, selected by the "Log Palette" line on the screen, or by the "logmap=" command line parameter: logmap=1: for standard logarithmic palette. logmap=-1: "old" logarithmic palette. This variant was the only one used before Fractint 14.0. It differs from logmap=1 in that some colors are not used - logmap=1 "spreads" low color numbers which are unused by logmap=-1's pure logarithmic mapping so that all colors are assigned. logmap=N (>1): Same as logmap=1, but starting from iteration count N. Pixels with iteration counts less than N are mapped to color 1. This is useful when zooming in an area near the lake where no points in the image have low iteration counts - it makes use of the low colors which would otherwise be unused. logmap=-N (<-1): Similar to logmap=N, but uses a square root distribution of the colors instead of a logarithmic one. logmap=2 or -2: Auto calculates the logmap value for maximum effect. Another way to change the 1:1 mapping of iteration counts to colors is to use the "ranges=" parameter. It has the format: ranges=aa/bb/cc/dd/... Iteration counts up to and including the first value are mapped to color number 0, up to and including the second value to color number 1, and so on. The values must be in ascending order. A negative value can be specified for "striping". The negative value specifies a stripe width, the value following it specifies the limit of the striped range. Two alternating colors are used within the striped range. Example: ranges=0/10/30/-5/65/79/32000 This example maps iteration counts to colors as follows: color iterations ------------------- 0 unused (formula always iterates at least once) 1 1 to 10 2 11 to 30 3 31 to 35, 41 to 45, 51 to 55, and 61 to 65 4 36 to 40, 46 to 50, and 56 to 60 5 66 to 79 6 80 and greater Note that the maximum value in a ranges parameter is 32767. Related to "Decomposition" are the "biomorphs" invented by Clifford Pickover, and discussed by A. K. Dewdney in the July 1989 "Scientific American", page 110. These are so-named because this coloring scheme makes many fractals look like one-celled animals. The idea is simple. The escape-time algorithm terminates an iterating formula when the size of the orbit value exceeds a predetermined bailout value. Normally the pixel corresponding to that orbit is colored according to the iteration when bailout happened. To create biomorphs, this is modified so that if EITHER the real OR the imaginary component is LESS than the bailout, then the pixel is set to the "biomorph" color. The effect is a bit better with higher bailout values: the bailout is automatically set to 100 when this option is in effect. You can try other values with the "bailout=" option. The biomorph option is turned on via the "biomorph=nnn" command-line option (where "nnn" is the color to use on the affected pixels). When toggling to Julia sets, the default corners are three times bigger than normal to allow seeing the biomorph appendages. Does not work with all types - in particular it fails with any of the mandelsine family. However, if you are stuck with monochrome graphics, try it - works great in two- color modes. Try it with the marksmandel and marksjulia types. You'll remember that most fractal types are calculated by iterating a simple function of a complex number, producing another complex number, until either the number exceeds some pre-defined "bailout" value, or the iteration limit is reached. The pixel corresponding to the starting point is then colored based on the result of that calculation. The decomposition option ("decomp=", on the screen) toggles to another coloring protocol. Here the points are colored according to which quadrant of the complex plane (negative real/positive imaginary, positive real/positive imaginary, etc.) the final value is in. If you use 4 as the parameter, points ending up in each quadrant are given their own color; if 2 (binary decomposition), points in alternating quadrants are given 2 alternating colors. The result is a kind of warped checkerboard coloring, even in areas that would ordinarily be part of a single contour. Remember, for the M-set all points whose final values exceed 2 (by any amount) after, say, 80 iterations are normally the same color; under decomposition, xmfract runs [bailout-value] iterations and then colors according to where the actual final value falls on the complex plane. When using decomposition, a higher bailout value will give a more accurate plot, at some expense in speed. You might want to set the bailout value (in the parameters prompt following selection of a new fractal type present for most but not all types) to a higher value than the default. A value of about 50 is a good compromise for M/J sets.