Fractintis a freeware fractal generator created forIBMPC's and compatible computers to run under DOS and ported toLinux. You can run the DOS Fractint program under a modern version of Window using DOSBox. This page is for anyone who wishes to keep up with thelatest source changes and who would like to try the currentdeveloper's version.
Sometime in the spring of 1988 Bert Tyler bought a brand-new IBMPS/2 386/16. As an experiment he downloaded and ran a simpleMandelbrot-display program for it - and watched in horror as it tookthe program two hours to generate half of the initial image. In thosedays a Floating Point math unit was an expensive option on 386-basedPCs, and Bert's PC didn't have one.
Bert recalled that Dave Warker, one of his coworkers at the time,had built a demo Mandelbrot-generation program for TI graphics cardhe was working with using integer math, so Bert tried that approach.In September of 1988 Bert uploaded the results (full source and"documentation" included) to Byte Magazine's online publicstorage area as a 20K FRACT386.ARC file. It was a simple program: toget it to generate a portion of the Mandelbrot set one had to enterthe coordinates of the section one wanted on the commandline. A monthlater, Bert released version 2.0 (with zoom and pan!). Two monthslater version 2.1 was released, this time to both Byte's online siteand Compuserve's. A month later, version 3.1 included Julia sets.Then in December Mike Kaufman sent Bert an update he'd made toFRACT386 that gave it mouse support. Bert decided to give Mike fullcredit for his accomplishment and released that new code as part ofversion 4.0 - and the concept of Fractint and the Stone Soup Groupwas born. Soon after Bert attracted more collaborators and they setup shop in the Compuserve GRAPHDEV forum.
The latest offical release is available here: dosand linux. However, at thispoint the pace of development is so deliberate that the latestdevelopment patch is as stable (or maybe more stable, since knownbugs get fixed) than the "official" release, so you mightjust as well get the developer versions below.
The latest developer version files can be obtained inthis directory. We have divided the packages into separate dosand linux subdirectories. These files include the current releaseversion, current source, and the current Xfractint source. We nolonger create diff files corresponding to official patches. You canalso access the code directly from the subversion repository at URL has a rudimentary web interface; if you really want to seethe source, it is best to use a Subversion client (svn for Linux orTortoiseSVN for Windows) and download a working copy.
You will find some experimental, pre-alpha code here. Currently this includes Jonathan Osuch's Linux/Allegro port.This is in source code form which requires a development environmentas well as a Red Hat RPM package.
"This is an alternative way to enter corners as a center point and a magnification that is popular with some fractal programs and publications. Entering just "CENTER-MAG=" tells Fractint to use this form rather than CORNERS (see above) when saving parameters with the [B] command. The [TAB] status display shows the "corners" in both forms. When you specify three values (the usual case), this defines a rectangle: (Xctr, Yctr) specifies the coordinates of the center of the image while Mag indicates the amount of magnification to use. Six parameters can be used to describe any rotated or stretched parallelogram: Xmagfactor tells how many times bigger the x- magnification is than the y-magnification, Rotation indicates how many degrees the image has been turned, and Skew tells how many degrees the image is leaning over. Positive angles will rotate and skew the image counter-clockwise."
"Fractint uses Parameter files[7][8] to save/restore all options and settings,[9] required to recreate particular images. The parameters required to describe an image require very little disk space, especially compared with saving the image itself. " [10]
Reset causes Fractint to reset all calculation related parameters to their default values. Non-calculation parameters such as "printer=", "sound=", and "savename=" are not affected.[13] The reset=1730 in the parameter file shows that it was created with 17.3 version of Fractint.[14]
The single, dual, and triple pass modes all result in identical images. These modes are for those who desire the highest possible accuracy. Most people will want to use the guessing mode, described next.
Solid-guessing ("g") is the default. It performs from two to four visible passes - more in higher resolution video modes. Its first visible pass is actually two passes - one pixel per 4x4, 8x8, or 16x16pixel 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 aresurrounded by the same color. Solid-guessing can guess wrong, but it sure guesses quickly!
Solid-guessing stop after pass n ("g1" through "g6") are a variation on the guessing mode in which the algorithm stops after the nth pass. This facility is for exploring in low resolution when you'd rather see a lowresolution image with large blocky pixels filling the whole screen than a small low resolution image such as you get with the (View Windows) command. Note that on the screen you can't directly type g1 or g2.Press g repeatedly until you get the option you want, or else use the left or right cursor keys.
Boundary Tracing ("b"), which only works accurately 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 aroundthe 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 and colors in rectangles that have a boundary of a solid color. It's actually slower than the solid-guessing algorithm, but it looks neat, so we left it in. This mode is also subject to errors when islands of color appear inside the rectangles.
Diffusion Scan ("d") is a drawing type based on dithering techniques. It scans the image spreading the points evenly and to each point it paints a square of the appropriate size so that the image will be incrementallyenhanced. This method calculates ALL the points in the image being a good substitute for Single/Dual/Triple pass and presents a quick visualization even in the slowest fractals. With "fillcolor=0" (below) the squares are not painted and the points are spread over the image until all have being calculated (sort of a "Fade 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.
Orbits ("o") draws an image by plotting the orbits of the escape time fractals. This technique uses the same coordinates to draw an image as the other passes options, sets "passes=1" and no symmetry, and thenplots the orbits for each pixel. Zooming into a "passes=o" image is in fact zooming into the "passes=1" image, and the resulting image may not be what is expected. To find interesting places to investigate, press after an image has completed and watch the behaviour of the orbits as the cursor is moved around the screen. See Orbits Window (p. 36).
The "outside=summ" option causes Orbits to increment a pixel's color number every time an orbit touchs it; the resulting display is a 2-d histogram. If "outside=" is some other value, then the "inside=" colordetermines the color of the plotted orbits. If "inside=0", then the color number is incremented at the start of each pixel of the passes=1 image.
The "orbitdelay=" option controls how many orbits are computed before the orbits are displayed on the screen. This allows the orbits to settle down. The "orbitinterval=" option causes Orbits to plot every nth orbit point. A non-zero value of the "periodicity=" option causes Orbits to not plot orbits that have reached the bailout conditions or where an orbit goes off the visible area of the image. A zero value of periodicity will plot all orbits except as modified by orbitdelay and orbitinterval.
Synchronous orbits ("s") is an experimental mode using the "fractal witchcraft" algorithm based on the Almondbread implementation by Michael Ganss. This algorithm optimizes deep zooms by calculating parallelorbits starting at different points, and subdividing when the orbits break formation. Michael's implementation had to be extensively modified to work with Fractint's DOS medium memory model environment.
Synchronous orbits (also known as SOI) has some limitations. SOI is loosely coupled with fractint and most options don't work with it. Only types mandel and julia are implemented. SOI is only useful for very deepzooms, but only up to the limit of double precision. Within this narrow magnification range, SOI can result in tremndous speedups. If you invoke fractint with "debug=3444" on the command line, a long double (ratherthan double) version will be used, which allows zooming about 1000 times deeper. SOI really needs to be ported to fractint's arbitary precision. This will likely happen only after Fractint is moved to a betterprogramming environment.
These unique variations on the Julia set theme, presented in The Science of Fractal Images, challenge us to expand our pre-conceived notions ofhow fractals should be iterated. We start with a very basic Julia formula:
The standard algorithm would test each iterated point to see if it "escapes to infinity". If its size or "modulus" (its distance from theorigin) exceeds a preselected Bailout Test (p. 100) value, it is outside the Julia set, and it is banished to the world of multicolored levelsets which color-cycle spectacularly. But another way of describing an escaped point is to say that it is "attracted" to infinity. We make thisdecision by calculating whether the point falls within the "target set" of all points closer to infinity than the boundary created by thebailout value. In this way, the "disk around infinity" is conceptually no different from the disks around Finite Attractors (p. 188) such asthose used for Newton fractals.
3a8082e126