Program Usage Overview
The main window of the program is pictured below.
It consists of four main parts, the Image Panel, History Panel, Generating Formulas and Options Panel, and Color Scheme Panel. The History Panel, Generating Formulas and Options Panel, and Color Scheme Panel are all stacked on the left side of the window using a scrolling viewing area and the Image Panel is on the right.
- History Panel: The History Panel contains a list of all of fractals that have been graphed. If you click on a fractal in the list you will see the fractal information in the box on the right of the list. If you double-click on a fractal in the list, the fractal information will be loaded into the Generating Formula options. This allows you to quickly go back to a previous fractal. Note that color information is not saved, just the equations and positioning.
- Image Panel:The Image Panel displays the current rendered image. You can change the image size using the main menu Render Options > Image Size >.... The displayed image is a scaled down version of the actual image so that the full image can be seen on the screen. When you save or copy the image it will save the actual size as selected from the Image Size menu.
- Generating Formulas and Options Panel:The Generating Formulas and Options is where you input the equations you wish to use in the dynamical system and set other options, such as maximum iteration, bailout radius, positioning and modes. There are two types of systems that are supported, complex plane and real plane parametric. Each of the two types have two modes, fixing the initial dynamic variable and allowing another variable to range over the plane (Fix z/(x, y) which can be thought of as a Mandelbrot mode) and fixing the other variable and allowing the initial value of the dynamic variable to range over the plane (Fix c/(c, d) which can be thought of as Julia set mode).
- Color Scheme Panel:The Color Scheme panel allows the user to use a number of different coloring schemes for the inside and outside of the fractal. In addition, the user can blend and overlay color schemes.
Using the Program
The general procedure to effectively this program is to,
- Set the generating type and equations you want to graph. Set the image size to something small, such as the default 800 X 600, this will make the exploration quicker.
- Render the image, using the play button.
- Using the mouse options and formula options, zoom in on the desired area.
- Set the image size to something larger and re-render the image.
- Set the color options to view the fractal in different schemes. When a change is made, re-render the image (play button) to see the color changes. Note that the program will automatically determine if it has enough information to recolor the image without regenerating the image data or if it needs to generate more information to produce the desired coloring.
- Save the image to a file or copy the image to the clipboard to be loaded into another program.
Tools and Options
- File Options:
- Open Fractal Information: Opens a fractal information file and loads the information into the generating formula options. Fractal information files just store the information of the generating formula options, they do not store color scheme information or history information.
- Save Fractal Information: Saves the current contents of the generating formula options to a file.
- Save Image As: Saves the current image to an image file, PNG, JPG, and BMP are the currently supported formats with PNG being the default. This option will also save a text file with an "_info.txt" extension added to the image filename that contains the formula information of the fractal image.
- Create Animation Sequence: Saves a sequence of images defined by the Animation Sequence dialog settings.
- Edit Options:
- Copy Image: Copies the current image to the clipboard.
- Copy Fractal Information: Copies the fractal information to the clipboard.
- Recolor: Invokes the recoloring of the image, to be used when the color scheme has changed but the generating formula and options have not changed.
- Reset Center to Origin: Resets the center to (0, 0).
- Reset Width: Resets the width to the default value.
- Reset Center and Width: Resets both the center to (0, 0) and the width to the default value.
- Reset Default Equations and Options: Resets all of the generating formula options to their default values, that is, the Mandelbrot set equations.
- Render Options:
- Render: Renders the image or just recolors the image depending on if the program has already stored the needed rendering data.
- Force Render: Forces a re-rendering of the image. This option should never need to be used but is there just in case. The render option is the only image refreshing option that should be needed.
- Image Size: The submenu allows you to select from numerous different stock sizes for your image and has an option for you to input your own custom size. Note that on some machines, large image sizes can cause out of memory errors.
- Threads: This allows the user to select the number of execution threads that are used in rendering the image. If you are not familiar with parallel processing and what threads are you can leave this set to the default value of 32. In a nutshell, the more threads you use the more processing tasks you are giving the CPU. Most CPU's have multiple cores and can handle numerous threads to make processing more efficient. On the other hand, generating too many threads puts thread management stress on the CPU as well. If you have a slower machine you may want to move this down to 16 or 8 and if you have a faster machine you may wish to increase the number of threads. I would suggest rendering the default Mandelbrot set with different thread settings to see how your CPU handles them and choose the thread amount that gives you the best response. Each thread in this program is responsible for generating a subset of vertical lines in the image, you will see this when an image is rendering. So the Width setting will generate a thread for each vertical line of the image. This will probably work well for smaller images but you will want to change this when graphing larger images. Also, since each thread generated a subset of vertical lines, if the number of threads exceeds the width of the image you will be generating unused threads.
- Storage: This option allows the user to select how much information is generated and stored when a fractal is rendered. Since the general evaluation of expressions are lengthier than hard coded formulas we added into the rendering process all calculations needed for each color scheme so that re-rendering was not necessary if a color scheme option was changed, all that is needed is the much faster recoloring. Storing all of this extra information can be taxing on the system memory so there is a rendering option to store a minimum amount of data and an option to store all the data. If you store all of the data then you can move between color schemes and change options in the color scheme without the need to re-render the image. If you chose to store a minimum amount of data then the program will look for the current color scheme and generate the needed data just for that scheme. So if you change options in that scheme the system will not re-render the image but if you change color schemes the program may need to re-render the image. Using the storage of all data makes the recoloring faster but uses a large amount of memory and using minimum data storage makes the rendering process a little faster and uses less memory but requires re-rendering on color scheme changes. It is probably best to store all data (the default setting) unless your machine runs out of memory on large images.
- Color Schemes: Like the storage options, this allows the user to turn on and off some of the underlying calculations that are being done during a render. This will speed up the rendering process when you remove color schemes that you know you will not be using. For example, curvature and stripe schemes do not tend to work well with convergence bailouts or with non-polynomial-like systems. So if you are working with one of these types you will probably not want to use a curvature or stripe scheme, hence turning them off will speed up calculations and use less memory. There is another option in this menu to allow the user to select to use multiple line tabs or a scrolling tab in the color scheme displays.
- Mouse Mode: This menu allows you to set the way the mouse interacts with the image panel. The mouse can be set to zoom in on a click, as well as zoom out and recenter the image. It can also transfer the current coordinates into the positions for z/(x, y) or c/(c, d). These make it easier to move from a Mandelbrot-type set to a Julia-type set. You also have the option to turn off mouse interaction with the image and to set the zoom factor.
- View: Allows you to show and hide the tool bars as well as the history panel.
- Help: Invokes this help system and the about screen.