The Java version of the Sierpinski Gasket is comprised of a central viewing area, called the canvas, where all the mathematical calculations are graphically represented. On the canvas the student will see a number of vertices and plotted dots. Placed around the canvas are various button, choices, and labels that give specific information and allow the student to change the various values being used to generate the image. Below is an explanation of all elements of the Sierpinski Gasket Generator.

Each vertex is a circle with diameter of 6 pixels and is color-coded for distinction. The vertices are arranged by default on the edge of a circle with all vertices equally spaced. The first (red) vertex is always placed at the top of the circle. Vertices may be dragged by the student by clicking down on the vertex and dragging the mouse pointer to any point within the canvas and then releasing. If there are dots already plotted, then the current number of dots will be replotted as the student drags the vertex on the canvas. This is done whether or not 'autoreplot' is on. (NOTE: If there are more than 100 dots currently present on the canvas, only 100 will be replotted while a vertex is being dragged. After the vertex is released, the current number of dots will be replotted. This is done for speed's sake, it takes a little time for several hundred or thousands of dots to be recalculated.)

Dots are plotted and placed on the canvas according to the values that are currently being used. Every dot is color coded to represent the vertex to which it is being plotted. The first dot is always black, however. If the student clicks within the canvas when there are zero dots, then the first dot will appear wherever the student releases the mouse. (NOTE: Dragging and releasing a vertex with zero dots will not also place the first dot.)

'STOP' is shown while dots are being plotted and placed on the canvas. Clicking 'STOP' will halt all the plotting and stop placing new dots on the canvas. 'CLEAR' is shown if no plotting is being done. 'CLEAR' clears the screen of all dots. The vertices stay where they currently are.

Clicking the 'SHOW TRACES' button will add trace lines from the previously dot plotted to the dot being plotted. If the dot is to be rotated, then the trace will go the plot ratio distance along a straight line, then arc along the rotation path. This feature illustrates for the student the exact path the dot followed to be placed on the canvas. Clicking 'HIDE TRACES' will stop the traces from being drawn.

These checkboxes determine the size of all dots plotted while a specific dot size is specified. The 'fine' size is one pixel in size and the 'coarse' size is a circle 4 pixels in diameter. The 'coarse' size is better for rapidly filling in open space, while the 'fine' is better for detail in intricate designs.

This checkbox allows the student to see how various placements of vertices affect the overall look of the image without having to manually replot. However, only changing the radius and changing the number of vertices are affected by this.

This button replots the current total number of dots, but the vertices stay in their current position. The currently showing dot size, plot ratio, plot probability, and rotation are used regardless of the possibly many different schemes used to generate the currently display.

This label shows the current number of dots on the canvas. This label increments as dots are being plotted.

This button adds one more dot using the currently showing dot size, plot ratio, plot probability, and rotation. This new dot is plotted from the previously dot that was placed on the canvas. This is a nice feature to use when few dots are on the canvas because the student can easily see the new dot being placed on the canvas and can inspect the 'whys' of its placement. When many dots are displayed though, finding the newly plotted dot can be next to impossible.

This choice adds the chosen amount of dots to the current display using the currently showing dot size, plot ratio, plot probability, and rotation (see below). The additional dots are plotted starting from the previously dot plotted. If the canvas is clear of dots, the first dot is chosen at random. Changing one or all of the vertices' plot values and adding more dots to the current image can create interesting images.

This panel is four columns wide and displays all current vertices being used. Beside each vertex are three labels displaying this specific vertex' current plot values. By clicking on a specific color, the student may change any or all of that vertex' plot values. By clicking the 'SET ALL' button, the student may change any or all of the plot values of all vertices at once. The ring color around each of these vertices signifies whether or not this vertex is color-neutral. These values are changed via the input window. The individual elements are explained below.

Each vertex on the canvas can be colored individually, or can be set to a neutral (black) color. All dots plotted toward a neutral vertex will be colored neutrally, also.

This is the ratio of the total distance from the previously plotted dot to the chosen vertex. The next dot plotted will be placed on the canvas at this evaluated distance. The ratio is input as a numerator and a denominator.

This is the angle in degrees that a newly plotted dot will be rotated BEFORE being placed on the canvas and AFTER being plotted using its plot ratio. The line from the vertex to the previously plotted dot is the equivalent to the 'x' axis in the Cartesian plane, with the vertex being the origin. Positive degrees are calculated from this line counter- clockwise.

This is the relative probability of this vertex being chosen. The actual value of this field is unimportant in itself, because all non-zero values will be used to calculate a unit scale. As a result, if a student has put some probability values in decimal form and others in a whole number format, the vertex with a decimal probability will be chosen much less often than expected. For example, suppose there are two vertices being used and one has a probability value of '.33' and the other has a value of '67'. The student may wish the latter to be chosen only twice as much, but in actuality will be chosen 200 times more often. A probability of '0' will exclude that particular vertex from being chosen.

These two buttons and choice work together to change to overall radius of the vertices relative to the canvas' size. The range is from .1 to .9. When the radius is changed, the vertices are placed in their default scheme regardless of where they were. If 'autoreplot' is on then however many dots are currently shown will be replotted from scratch in accordance to this new scheme. A change in radius with 'autoreplot' on will NOT simply redraw the current display at a different size. If 'autoreplot' is off then the new vertex scheme will appear without any dots.

These two buttons and choice work together to change the number of vertices shown. When there is a change in the number of vertices, they will be placed in the default scheme using the current radius. If 'autoreplot' is on, then the current number of dots shown will be replotted from zero in accordance with the new placement of the vertices. Since the vertices are reset to the default scheme, adding vertices with 'autoreplot' on will NOT simply redraw the current image with another vertex evaluated in with the others. If 'autoreplot' is off, then the new vertex scheme will appear without any dots.

This button causes the grid window to open up which allows the student to select from various grid options.

This window opens when one of the vertex colors is clicked, or when the SET ALL button is clicked. This window allows the student to input values for specific or every vertex. The input cannot include a '0' in the denominator text field or multiple values or non-numerical input in any text field.

This checkbox is 'SET ALL' specific. It allows the student to set all vertices' colors to neutral or not. If this checkbox is marked, then all vertices will be colored according to the state of the 'neutral color' checkbox. If this checkbox is not marked, then the 'neutral color' checkbox does not affect the vertices' color.

This button sets the appropriate fields to the new values. If no input is in a specific text field, then no change will occur in that field. If invalid data has been entered, an error window will pop up. If all text fields have valid values, the input window will close and the appropriate fields will be changed to reflect the changes.

This button allows the student to close the window without any changes being made.

This window allows the student to choose which grid options are to be used. The options available are the type of grid to be used, whether or not to see the grid, the size of the grid, and whether or not to 'snap to grid'. The grid is marked with faded squares.

The student may choose between a square and triangular (equilateral) grid.

The grid may be either visible or invisible. SNAP TO GRID is not affected by this option.

The chosen grid may be one of three sizes; small, medium, or large.

This option allows the student to precisely drag vertices to a location. When the vertex is released from being dragged, the vertex will immediately 'snap' to the closest grid marker, according to whatever type and size has been selected. This will occur whether the grid is visible or not.

This button sets the appropriate fields to the new values.

This button allows the student to close the window without any changes being made.