The modeling of circles and spheres in L-Systems is achieved by the following modules: If a parameter n is added to any of the three modules, then the diameter that was defined by the value of line width is over-ridden by the value of n.

Example:

The following production draws a smaller sphere connected to a larger sphere by a straight
line.

Lsystem: 0
derivation length: 1

Axiom:X

homomorphism
X --> @O(2)F(6)@O(3)

endlsystem

Example:

The following L-System produces a two dimensional picture consisting of a circle
surrounded by a spiral.

#define da 0.25
Lsystem: 0
derivation length: 1440

Axiom: X(0)
X(a) --> A(a)X(a+da)

homomorphism
A(a) --> [+(a)f(1)@o(0.1)+(3*a)f(0.5);@o(0.1)]

endlsystem

Example:

The following L-System draws a molecule with four atoms connected to the center of
the molecule.

#define STEPS 3
#define TET 70.5 /* 180 - 109.5 */
#define C_SIZE 0.6
#define H_SIZE 0.5

Lsystem: 0
derivation length: STEPS
Axiom: ,(1)#(0.15)|X 

X --> HFC[^(TET)FH]/(120)[^(TET)FH]/(120)[^(TET)FH]
C --> [,(2)@O(C_SIZE)]
H --> [,(3)@O(H_SIZE)]

endlsystem


Preface
Parameters
Appendix I
Appendix II
References
Index Circles and Spheres Generalized Cylinders Surfaces Textures