Mandelbrot Magic

Supplementary Specification

Implementation Constraint

The system is implemented in pure Java, with the possible exception of the use of the Java Native Interface (JNI) to access a GPU.

Legal Requirements

The initial distribution of this project will be open source. The open source license will not preclude the possibility that subsequent versions become proprietary: The GNU licence will not be used.

Usability

In order to achieve the highest quality images and animations:

Zoom depth should not be limited by double precision arithmetic.

Color rendering should not be banded. Rather, it should be very smooth (cf. Wikipedia entry on this topic)

Performance

The goal is to use all possible methods to speed image rendering and animation production. The use of multi-threading and cluster/cloud computing are compatible with a pure Java implementation. Java currently can access a GPU, if at all, only via the Java Native Interface (JNI), which is not pure Java.

Internationalization

The initial distribution will not be internationalized. Subsequent versions may be internationalized.