Fractal Science Kit - Fractal Generator

Home • Gallery • Tutorials • Download • Purchase • Site Map

Product Overview
Getting Started
Fractal Types
Application Windows
Properties Pages
Fractal Programs
Programming Language
L-System Language
Special Topics
Installation and Support
Built-in Programs
Fractal Links

Fractal Science Kit

The Fractal Science Kit fractal generator is a Windows program to generate a mathematical object called a fractal. The term fractal was coined by Benoit Mandelbrot in 1975 in his book Fractals: Form, Chance, and Dimension. In 1979, while studying the Julia set, Mandelbrot discovered what is now called the Mandelbrot set and inspired a generation of mathematicians and computer programmers in the study of fractals and fractal geometry.

Fractal: Kleinian Group Orbit TrapLike other mathematical ideas, fractals involve numbers and equations. Unlike most other mathematical ideas, fractals can be used to generate complex, beautiful images that appeal to mathematicians and children alike. Swirling spirals, endless self-similar repetitions receding into the distance, geometric objects arranged in infinitely complex patterns, plant-like creations, geologic designs, clouds, and more, comprise the fractal landscape. These wondrous patterns defy logic yet owe their very existence to mathematics and computers. See the Fractal Image Gallery for some examples of the myriad of fractal designs possible.

Fractal: Mobius Dragon IFSA fractal image is created by evaluating a complex equation or by performing a sequence of instructions, and feeding the results back into the equation over and over again. During the iteration, you accumulate statistics and map the resulting data to colors, creating the fractal image. By varying the equation or the instructions, you can create Mandelbrot Fractals, Orbital Fractals, L-System Fractals, Orbit Traps, and more.

The Fractal Science Kit fractal generator provides a rich framework for exploring the world of fractals. It handles the common processing steps required to generate a fractal image so that you can concentrate on the fun part; developing the fractal formulas/equations, complex transformations, and coloring schemes that define the fractal.

This is not to say that you must write code to use the Fractal Science Kit. On the contrary, hundreds of Built-in Programs are available and most of these provide options that yield countless variations. A fractal image is the result of combining an equation with data collection programs, complex transformations, and color controllers (the instructions that map the data to colors). By choosing different combinations of these programs/options, you can generate more fractal images than you could ever hope to view in your lifetime without ever writing a single line of code.  See the Fractal Image Gallery for examples of what you can produce using only the Built-in Programs.

Fractal: Orbit TrapThe Fractal Science Kit fractal generator supports many different Fractal Types including: Mandelbrot, Julia, Convergent, Newton, Orbit Traps, Sierpinski Triangle, IFS, Strange Attractors, Rep-N Tiles, Symmetric Icons, Symmetric Attractors, Frieze Group Attractors, Wallpaper Group Attractors, Hyperbolic Attractors, Apollonian Gasket, Circle Inversion, Mobius Dragon IFS, Mobius Patterns, Grand Julian IFS, Elliptic Splits IFS, Schottky Group, Kleinian Group, L-System and many more. Hundreds of built-in equations, transformations, orbit traps, and color controllers, allow the casual user to produce stunning fractal images while providing the experienced fractal developer a rich set of illustrative examples on which to build his/her own fractal programs.

Fractal: Elliptic Splits IFSThe Fractal Science Kit fractal generator provides an interactive programming environment with Application Windows for viewing the fractal image, modifying the properties that define the fractal, examining the data behind the fractal, and viewing/editing the fractal programs, macros (inline functions/methods), and color gradients, used by the Fractal Science Kit to produce the final image.

The Properties Pages allow you to view/edit all the properties associated with a fractal. Properties control every aspect of the resulting fractal image and the Fractal Science Kit fractal generator supports a rich set of properties for choosing colors, controlling image processing tasks (e.g., smoothing, sharpening, embossing, anti-aliasing), controlling Data Normalization (e.g., contrast stretching, histogram equalization, data scaling via a transfer function), selecting/editing the Fractal Programs (equations, data collection programs, transformations, and color controllers), and much more.

Fractal: Grand Julian IFSThe Programming Language you use to develop your Fractal Programs, supports a complete set of control structures including if statements, while loops, for loops, switch statements, inline functions/methods, arrays, and user defined objects. The complex data type is the fundamental variable type, and arithmetic operators and functions handle complex operands/arguments. A rich set of built-in functions/methods are included, and you can develop your own library of functions/methods for use throughout the application.

Fractal: Borromean Rings Orbit TrapPrograms written using the L-System Language are also supported.

This documentation describes what you need to know to use the Fractal Science Kit fractal generator effectively. This document does not describe the hundreds of Built-in Programs that define the fractal formulas, orbit traps, transformations, and color controllers. These are described in the comment section at the beginning of each program. This document does describe the structure of these programs, how these programs are hooked into the application framework, the programming language used to develop your fractal programs, and the built-in tools available to help you along the way.

Documentation Roadmap

See the Product Overview for a more detailed overview of the Fractal Science Kit fractal generator or delve right into the product documentation using the links on the left. For a complete list of topics, view the Site Map.

Fractal: PhoenixAfter you download the application, see Getting Started for tips on what to do next.

The different Fractal Types are explained in the sections on Mandelbrot Fractals, Orbital Fractals, and L-System Fractals. Each section describes the basic framework for fractal generation processing with respect to fractals of the given type.

Fractal: Mobius Dragon IFSThe Fractal Science Kit Mandelbrot Fractals encompass several related types including Mandelbrot fractals, Julia fractals, Convergent fractals, Newton fractals, and Orbit Traps. Orbit Traps can also be used to produce Circle Inversion, Apollonian Gasket, Schottky Group, and Kleinian Group fractals. The Sierpinski Triangle, Sierpinski N-gons, IFS (Iterated Function System) fractals, Strange Attractors, Rep-N Tiles, Circle Inversion fractals, Mobius Dragon IFS, Mobius Patterns, Grand Julian IFS, Elliptic Splits IFS, Kleinian Group fractals, Symmetric Icons, Symmetric Attractors, Frieze Group Attractors, Wallpaper Group Attractors, and Hyperbolic Attractors, are all examples of the Fractal Science Kit Orbital Fractals. Lindenmayer System Fractals or L-System Fractals can be viewed as a stand-alone fractal or used to define L-System based Orbit Traps.

The Application Windows and Properties Pages sections, discuss each of the application's windows in detail and document all of the properties used to control the fractal generation framework.

Fractal: Circle Orbit TrapThe Fractal Science Kit fractal generator comes with hundreds of Built-in Programs which are used to create your fractals. In addition, you can develop your own Fractal Programs to define the Equations, Data Collection Programs, Color Controllers, and Complex Transformations that generate the fractal image.

The set of statements that make up a Fractal Program are called Program Instructions or Instructions for short. Instructions are written in a language that is similar to the C programming language. See the Programming Language section for a complete description of the Syntax of the programming language. The Built-in Functions and Built-in Macros are a set of built-in functions/methods available to all your fractal programs. You can also develop a library of your own Macros; i.e., Objects, Inline Functions, Inline Methods, and #Define Statements for use throughout the application.

Fractal: Splits NgonThe Built-in Programs are based on the work of many others. The Fractal Links list the most important sources for ideas but additional inspiration was found throughout the Internet on pages devoted to fractals and/or mathematics. I have tried to credit the ideas behind each program in the comment section at the beginning of the program. The more than 60,000 lines of source code for the built-in fractal programs and the built-in macros (inline functions/methods) are accessible via the Program Browser and Macro Editor, respectively.

When you're ready to begin using the Fractal Science Kit fractal generator, a set of in-depth Tutorials help you learn how to generate Mandelbrot Fractals, Orbit Traps, Orbital Fractals, and L-System Fractals. In addition to covering the basic concepts, these tutorials explain how you can use complex transformations and color controllers to take control of every aspect of the fractal image processing. A Fractal Programming tutorial introduces you to the key concepts involved in writing your own fractal programs.

Fractal: Steiner Chain Orbit TrapFinally, a downloadable collection of illustrative Fractal Examples are available to get you started quickly. The download contains the fractal properties files that I used to generate the images in the Fractal Image Gallery. You can use these files as a starting point for your own explorations.

Download the evaluation copy of the Fractal Science Kit fractal generator today!

Fractal: Hyperbolic MobiusAlso, check out my deviantART gallery and join me on Facebook and/or Flickr, and to view a short video of several fractals generated by the Fractal Science Kit set to music, click Fractal Beat.

Please note that the images throughout this site have been compressed to reduce the size of the associated image files. While this improves the speed at which the page can be delivered to your computer, it also degrades the image somewhat. The images as produced by the Fractal Science Kit are of higher quality but are significantly larger files.

I allow non-commercial use of any of the images in the Fractal Image Gallery on your web site as long as you attribute the image as having been created by Ross Hilbert using the Fractal Science Kit fractal generator and include a link to on your site.

Commercial use of the images in the Fractal Image Gallery requires a license. I would be happy to work with you to license any of the images, and can provide you with large, high quality image files to your specifications. Contact me at for details.

If you would like to purchase a print of any of these images, I have a RedBubble gallery where large, high quality renders of many of these images can be found. If the image you are interested in is not found there, contact me at and I will add it to the RedBubble gallery.

I hope that you find the Fractal Science Kit fractal generator useful in your quest to understand these extraordinary and beautiful mathematical creations. Enjoy!

Ross Hilbert


Copyright © 2004-2019 Ross Hilbert
All rights reserved