FractalGen 1.4 is a program that draws L-System fractals. An L-System has an alphabet of tokens each with a corresponding rule. These rules create a fractal. This readme's purpose is to list all tokens of FractalGen's unique alphabet and their functions as well as what each component of the interface does.
__________________________________________________________________________________
The Alphabet: F,X,Y,R,f,x,y,r,+,-,[,],<,>
General rule for alphabetical tokens(F,X,r,y etc): IF the corresponding influence modifier is checked, when parsed, the token will cause the program to draw a line in the current direction if uppercase or move forward in the current direction without drawing a line if lowercase.
F: Token is replaced by the F String. Will draw a line if influential
X: Token is replaced by the X String. Will draw a line if influential
Y: Token is replaced by the Y String. Will draw a line if influential
R: Token can be replaced by any of the four strings. This is a completely random chance at each occurance of the R token. Will draw a line if influential.
Lowercase tokens: Same rules apply as above, the exception being that these tokens will move forward without drawing a line if influential.
+: Increases the current direction by angle.
-: Decreases the current direction by angle.
[: Token stores the current coordinates and direction into a virtual stack.
]: Loads the lates entry from the virtual stack and continues drawing from the loaded location in the loaded direction.
<: Is disregarded until a > token is parsed.*
>: Token is replaced by the string between it and the most recent < character.*
NOTES: * < and > are parsed after all string replacement have occurred for each order.
__________________________________________________________________________________
The Fractal Components: Atom String, X String, etc
Order, Length, Angle
Influence modifiers
Atom String: The main String that initiates the L-System. This is equivalent to the first order of the fractal
Other Strings: The replacement strings for their corresponding tokens.
Order: Controls the complexity of the fractal. Every order, the fractal string goes through another string replacement as per the token rules.
Length: The distance drawn or moved forward in the current direction by influential tokens.
Angle: The amount the direction is increased or decreased by.
Influence modifiers: Controls if a token is influential.
----------------------------------------
The Program Components: S button, L button, Save, Draw
S button: Saves the program's current configuration to your clipboard for easy sharing. Simply paste to share.
L button: Configures the program based on the shared string currently in your clipboard.
Save: Opens a browser to save the image. Images are to be save as .png ONLY.
Draw: Draws the fractal based on fractal components.
__________________________________________________________________________________
EXAMPLE
Atom String: FX
F String: F--<XF>
X String: X-YF++F
Y String: F[--F+]F
An order of 1 would be FX, which would simply draw a line.
Order 2 would be F--<XF>X-YF++F, which is then finalized to F--XFXFX-YF++F
Order 3 would be F--<XF>--<X-YF++FF--<XF>>X-YF++F-F[--F+]FF--<XF>++FF--<XF>, which is finalized to F--XFXF--X-YF++FF--XFXFX-YF++FF--XFXFX-YF++F-F[--F+]FF--XFXF++FF--XFXF
__________________________________________________________________________________
In closing
Please enjoy the program. I hope to continue updating it with more output formats as well as new tokens to create a truly unique alphabet. Please feel free to send feedback, thanks, or ideas to dhsol632@lavabit.com.