This is a Java Applet, best viewed using Sun's HotJava browser.

To zoom in, click and drag.

This applet calculates the Mandelbrot set using a modified and inferior
version of
the boundary trace algorithm. (see "Future Features" below) Transparent
pixels (gray in the hotjava default) are members of the Mandelbrot set,
which is defined as all complex `c` such that the transformation
`z -> z^2
+c` starting with `z=0` does not go to infinity. The color of
points not in the set is determined by the number of iterations of the
tranform before the value of `z` reaches a threshold value. (see
"Future Features" below).

The number of iterations determines how many times the tranform is
applied. If `z` is still lower than a threshold, the point is
considered to be in the set. To get full detail at any zoom, the number
of iterations would have to be infinite. This would take too long
though. 50 or 60 iterations is fine for a few zooms. 120 is a lot of
detail. More is slower, but also more detail.

The applet reports on the status line how many point it actually calculated. This number should always be smaller than the maximum. Sections of the set with large blocks of solid color will be calculated faster than intricate border areas.

Being the first Java app I've written, I'm too embarrassed by the messiness of the code to give it out. Maybe after I clean it up.

More examples, and a big, many iteration one. Include it in your HTML documents like so:

<app class="Mandel" (the name of the class) src="http://www.netgen.com/~mkgray/java/" iterations=20 (the number of iterations for orbits) realcenter=0 (the real coordinate of the center in the complex plane) imagcenter=0 (the imaginary coordinate of the center in the complex plane) scale=.01 (the scale per pixel) size=200 (the size of the resultant image) >

- Some way to zoom out
- Some way to get it to stop while it's drawing
- Increasing iterations as you zoom in for conservation of detail
- Better/funkier colormap handling and scaling
- Better algorithms (full boundary trace, etc.)

- Zooming in while it is drawing produces funny effects.
- Zooming by dragging from any other corner than the top left to the lower right causes some funny effects (but works...)
- There's an off by one error somewhere which causes funky artifacts during drawing, but it's no big deal

Mkgray, net.Genesis