2008
October 20:
Improved the algorithm for scaling the fractal window when choosing "scale to fit" (ctrl-W). This should make the window scale behave more consistently.
You can now press the Escape key when loading a file or pasting an image into the Design or Fractal window to finalize the position of the image. You can also press the Escape key when a polygon is selected in the Design window in the IFS mode or when a fixed point is selected in the chaos game mode and that polygon or fixed point will be deselected.
You can now press ctrl-alt-G to bring up a dialog box where you can enter your own grid size for the Design or Fractal window.
Fixed some issues with undo in the Design window.
Several changes to the Chaos Game mode. The default is now to use proportional probabilities when drawing the fractal based on the design in the chaos game. Changing the Functions window to the matrix or rotation form while in the Chaos Game mode should lock the form so changes cannot be made. That was not working correctly but should now be ok. The one exception is that you can still change the probabilities in those forms.
You can now save the chaos game moves to a file with extension ".chg", and can open files with that extension while in the Chaos Game mode. When the program is started it will check first for a "default.ifs" file. In no such file is found, it will check for a "default.chg" file and if that file exists, the program will begin in the Chaos Game mode and load the chaos game moves found in the default file. If you register the ".chg" extension, you can also double click on a .chg file to start the program in Chaos Game mode and load that file.
You can now click on the reference point in the chaos game to move the point to another location while holding down the left mouse button. Press the shift key to snap the point to the nearest grid point if the grid is turn on in the Design Window.
You can select a fixed point and move it by holding down the shift key and pressing one of the arrow keys (in addition to being able to move the fixed point with the mouse.)
August 15:
When an image is loaded from a file or pasted from the clipboard, it can now be positioned where desired in the design or fractal window. As long as the image is surrounded by a dotted line, you can move it with the mouse to a different location. Click anywhere outside the image to make it part of the window. This is particularly useful when using the image as the initial set for the deterministic method in the fractal window.
You can now zoom in when using the random method in the fractal window.
July 11:
Images drawn in the fractal window will now shift without being redrawn when the arrow keys are used to shift the fractal viewing window. Zooming the viewing window, however, will still cause the image to be redrawn from scratch.
Once the .ifs extension is registered to IFS Construction Kit, double clicking a file with .ifs extension will start IFS Construction Kit with that file.
Help buttons have been added to the windows for the various example methods for constructing iterated function systems, and for the tiling options window. These will open the help file directly to that topic.
Tiling can now use all four IFS color schemes. Also fixed a bug in trying to tile in the deterministic method.
The selection rectangle will no longer disappear if the fractal window is covered by another window. Also fixed a bug in copying a selected region in the fractal window.
June 26:
You can now play what I call the Sierpinski Triangle Game, which is based on the Chaos Game at Bob Devaney's website http://math.bu.edu/DYSYS/applets/chaos-game.html. The game presents a number of subtriangles coming from the iteration of the functions defining the Sierpinski triangle. A target subtriangle is colored red and the goal of the game is to move a dot from a corner of the original triangle into the interior of the target triangle in as few moves as possible. Other variations of the game allow for one or three of the iterations to involve rotations around a fixed point.
You can now display a grid in the design and fractal windows. The grid comes in four sizes: 0.05, 0.1, 0.125, and 0.25. You can use the grid to help design an initial polygon in the design window, or to create or move fixed points in the chaos game mode. When the grid is displayed, new design vertices or fixed points will snap to the nearest corner of the grid. In addition, the plus/minus keys will rotate through the four available grid sizes.
An option has been added to allow the initial figure in the deterministic method to consist of the current design polygon filled with a color of the user's choice.
The program will now start in the same state as when last quit in terms of whether the functions, fractal, and design windows are visible or hidden.
Fixed some issues in drawing initial sets in the deterministic method and some inconsistent scaling in the design window in the chaos game mode. Also, the ability to manually change the design window view got turned off for some reason during previous work. That has been fixed. There is also some better error checking on the numbers entered for the fractal and design window views.
February 11:
In addition to displaying the functions in an IFS in a compact matrix form as a single row (the way the program has always worked), you can now also display them in a standard matrix function format, with the matrix shown in 2x2 format and the translation vector shown in 2x1 format.
The IFS fractal is drawn in an image pane that is part of the fractal window. This image pane is resized as the fractal window is resized. Now you can specify a fixed size for the image pane and that size will not change if the fractal window changes. If the fractal window is too small to contain the image pane, scroll bars will be added. The image pane can be as large as 12 inches by 12 inches. This is really only useful if you want to copy the fractal image into another program (e.g. a graphics program) rather than just viewing it on screen.
Holding down the shift key when selecting one of the corners of a design rectangle will restrict the scaling to be proportional in both directions.Some inconsistencies in the user interface have been corrected, and other bugs squashed. Hopefully no new bugs have been created, but please let me know if any problems occur.
January 17:
You can now open a Preview window (from the Design menu) that displays a quickly drawn approximation to the IFS image (about 2000 points). As you modify an IFS design in the Design window, either by using the mouse to make changes, or using keyboard shortcuts, or using a command from the Draw menu, the preview will update simultaneously (well, at least if you have a relatively fast computer) to reflect the design changes. This also works with Chaos Game designs. You can also use the Preview window to see a quick preview of an IFS chosen from the Fractal menu. Let me know if there is anything that doesn't work quite right with the previews.
January 4:
Color palettes of up to 64 colors (used for drawing the IFS) are now saved and read with colors given in RGB format (red, green, and blue values). Palette files are saved with the extension "map" and are compatible with Fracint map files. Since these are just text files, you can create your own map files containing the RGB colors you want to use. The old "ifp" palette files (which stored the colors as Visual Basic long integers) can still be read by the program. There are also now more ways to modify the colors in the color palette from within the program.
In attempting to make some of the error messages the program displays more useful, I inadvertently created my own error. Also overlooked one area that needed changing when increasing the number of functions from 20 to 64. Both of these should now be fixed.
2007
December 17:
At a user's request, the maximum number of functions in an IFS has been increased from 20 to 64. As a result, the IFSkit.ini file from previous versions will no longer be valid. The first time you run the new version, the default values will be used and a new ini file will be created when the program exits.
The color palette for drawing fractals now consists of 64 choices. In addition, the number of rows used to construct box fractals and triangle fractals has been increased from 5 to 8.
Fixed a few other minor issues discovered while making these changes. But the change from 20 functions to 64 functions had more repercussions than I anticipated, so if I overlooked something please let me know.
December 11:
When drawing the ifs using the deterministic method, you can now use a regular polygon with from 3 to 9 sides as the initial set. The polygon can be drawn as an outline or as a filled solid. The program will make an attempt to scale the fractal window so that the polygon and all iterates will fit in the window, but you may still need to zoom out or shift the window. Let me know if you encounter any errors or bugs while trying to use this new feature.
November 12:
An earlier change caused polygons to be incorrectly drawn when choosing from the Design menu to use an initial polygon in the design window. That error has been fixed.
Fixed a bug where fixed points were not redrawn in the fractal window when a design was modified and the new fractal was drawn.
May 21:
Each function in the IFS can be drawn in a specified color. You can now save that color palette to a file, load a color palette from a file, and edit the current color palette.
January 24:
An alert user noticed that the fractal window was not being rescaled when creating a new IFS for a symmetric binary tree after having done one already with the choice of the deterministic drawing algorithm. Should be fixed now.
I discovered that a Microsoft security update changed the way the compiled html help files are treated by Internet Explorer in various "security zones", sometimes preventing them from being displayed. If you try to access help from within the program and get the message "Navigation to the webpage was canceled" in your browser window, do the following steps:
1. Right click on the IFS Help.chm icon and choose Properties.
2. In the general tab, look at the bottom section. If you see a button that says "Unblock", click it.
In case this does not work or the file is already unblocked, I added an option to the Help menu to load the help pages from this website in the user's default browser.
January 22:
The design for symmetric binary trees now has options to choose the deterministic or random algorithms for drawing the trees. Each option produces a slightly different IFS. Also fixed a few coding errors that had been overlooked.
Modified the design dialog boxes to add a Close button. The Cancel button had not always restored the previous IFS correctly. Should be better now.
January 18:
A new design example has been added to draw symmetric binary trees. The
program can compute the unique scaling ratio necessary to construct a
self-contact symmetric binary tree.
Users now have the option of several coloring schemes. You can color the IFS fractal based on each function in the IFS, or you can use a gradient color scheme based on each point's y-coordinate, distance from the center of the fractal window, or relative position to the fixed points. The gradient scale can be set by the user.
You can freeze the scale used for the fractal window. This makes it easier to draw several IFS fractals in the same window so that a consistent scale is used when drawing each image.
Fixed several interface bugs and issues.
2006
May 17:
The programming code for the Chaos Game mode has been rewritten to
simplify the design of an IFS based on chaos game moves. You can now
ctrl-click with the mouse to create a new fixed point at the mouse
location. When you switch from the IFS mode to the Chaos Game mode,
your fractal list under the fractal menu will remain intact, but
disabled. You can save your IFS from a chaos game design to the fractal
menu list and switch back to IFS mode. If you later switch back to the
Chaos Game mode, any IFS created in this mode will still be enabled and
display the chaos game moves. However, if you save such an IFS to a
file, only the IFS code will be saved so if you want to remember the
chaos game moves used, include them in a comment.
If you forget some of the mouse and keyboard shortcuts to use with fixed points in the chaos game mode, you can move the mouse pointer over the picture box in the lower right corner of the design window (where the number of the selected transformation is displayed). The pointer will switch to a question mark. Hold down the mouse button over this picture box to view a pop-up window containing the shortcuts. The window will disappear when you release the mouse button.
The same mouse trick can be used in IFS mode to remind you of the mouse and keyboard shortcuts for working with the selected polygon in the design window.
You can now "zoom in" with the design window.
Several bugs and interface issues were fixed.
May 2:
At a user's request, you can now shift the viewing window for the
fractal and design windows using menu selections or the arrow keys.
This is particularly useful when using the deterministic algorithm and
trying to see the entire initial picture.
Tweaked the interface design a bit. If you are working with an IFS that already has a name, and you make a change to the IFS code, an asterisk will be appended to the end of the name in the IFS window as a visual reminder that a change has been made. Also, when selecting a new IFS from the fractal menu or loading a new ifs file, the focus will remain on the current active window and not automatically jump to the IFS window. "Zoom to 100%" in the Draw/Zoom menu has now been replaced by a "restore" menu item. This can be used for restoring the viewing window to its original dimensions after either shifts or zooms. Let me know if there are problems with any of these design choices.
Fixed a few bugs with appending new IFS codes from a file to a list already in the fractal menu.
April 25:
A user pointed out that shortcut keypresses were sometimes not being
accepted for the fractal window. Should be fixed now. Also added, at a
user's request, a small popup help screen about tracing when you hold
the mouse down on the "trace on/off" box in the lower left corner of
the fractal window.
Fixed a few issues with drawing, loading, and saving an initial polygon in the design window.
April 24:
The box fractal design now allows for a 2x2 size (four boxes).
Added a triangle fractal design option under the examples. This allows you to take an equilateral triangle of 2, 3, 4, or 5 rows and subdivide it into equal subtriangles, then create a design by removing selected subtriangles. For example, using 2 rows (4 subtriangles) and removing the middle subtriangle produces the usual Sierpinski Triangle fractal.
Added an initial polygon for the design window that is an oriented equilateral triangle.
When using the deterministic drawing method, you must start with an initial picture in the fractal window. At a user's request, the first time you choose the deterministic method, the initial design polygon will be used as the picture. You can then change the picture if you want something else. There is a new option to use a triangle (equilateral or right, outlined or filled) as the picture. In addition, if you choose to load a picture from a file, the default coloring scheme will be to use the image colors when iterating as this usually produces the best results. You can still change to the coloring scheme that uses the ifs colors if you prefer.
In the design window, equilateral triangles are now rotated around the centroid of the triangle. All other polygons are rotated around the center of the bounding box.
During some earlier revision of the program, I inadvertently turned off the Overlay option when using the deterministic method. That has now been fixed.
2005
June 24:
Some of the zoom out options were not working correctly in the Fractal
window. Should be ok now.
June 19:
A third example design has been added based on the article "Number
Systems With a Complex Base: A Fractal Tool for Teaching Topology" by
Daniel Goffinet, American Math. Monthly, March 1991. This allows you to
construct an IFS determined by a complex number with modulus less than
1.
When doing a trace in the Fractal window, it is now possible to specify the exact x and y coordinates of the initial seed.
Corrected an error in the Chaos Game design mode that resulted in the wrong probabilities being associated with each function in the IFS.
May 28:
A few more tweaks in the user interface. Resizing the fractal and
design windows has hopefully been improved to eliminate the annoying
flickering. I have disabled the maximize button for the IFS, fractal,
and design windows since maximizing one window made all windows
maximized, and this was sometimes not helpful. So instead I added a
maximize and restore item to the Windows menu that mimics the behavior
of the maximize/restore button. This is a bit non-standard for Windows
programs so I would be interested in any comments about how well this
works (or if it doesn't work.)
When trying to tile the plane with a fractal design, you can now measure Δx and Δy between any two points in the fractal window. This might help in deciding on what vectors to use in the Tiling Options window to describe the translations that form the tiling. Hold down the ctrl key and click at the first point. While holding down the left menu button, move the cursor to the second point. The Δx and Δy values are displayed in the lower left corner. Those values and the line will vanish as soon as you release the mouse button.
May 21:
A "Tiling Options" menu item has been added to allow one to tile the
plane with an appropriately designed IFS. This is based on translating
copies of the IFS fractal in directions given as linear combinations of
two specified vectors. Two coloring schemes are available.
Several user interface issues were addressed.
May 4:
One can now create an IFS design that tiles the plane using integer
matrices. This is based on ideas in the papers
- "Fractal Tilings in the Plane," Richard Darst, Judith Palagallo, and Thomas Price, Mathematics Magazine, Vol. 71, No. 1, February 1998, 12-23.
- "Analyzing the Area of Fractal Tilings," Miyuki Breen and Judith Palagallo, The Pi Mu Epsilon Journal, Vol. 11, No. 8, Spring 2003, 413-422.
The two design options using Box Fractals and Tilings with Integer Matrices are now listed as submenus under "Examples" in the Design Menu.
March 15:
A user reported that the program would crash if one tried to open an
IFS file while the IFS window was closed, or if one tried to draw to
the Fractal window while it was closed. Both problems should now be
fixed. I also took this opportunity to add to the Help menu a link to
this website and an email link to make it easier to report bugs or
problems.
January 10:
Added the ability to set the background color of the Fractal window and
the color of the axes in the fractal window.
Added an IFSkit.ini file that will save the current locations and sizes of the three main windows, the colors used to represent each function in the IFS, the background color of the Fractal window, and the color of the axes in the Fractal window. This file must be in the same folder as the IFS Construction Kit program. If the program encounters an error when trying to read the ini file, or if the file does not exist, then the default values will be used and a new ini file will be created when you quit the program. Please let me know if you run into any problems. Corresponding changes have been made to the help files.
2004
August 16:
Fixed a small bug that prevented fixed points displayed in the fractal
window from being updated automatically when the user toggled between
colored points and black points.
June 1:
Fixed a few bugs including with adding comments and creating a
rectangle to use as an initial set with the deterministic algorithm.
Added the ability to print the images in the fractal and design windows, and the IFS code in matrix form, scaling and rotation form, or in terms of chaos game moves. The IFS codes may be "printed" to a text file.
Added a "How to..." section to the online help file.
April 24: Initial Release
