Difference between revisions of "LSystem SOP"

From TouchDesigner Documentation
Jump to: navigation, search
(TD Editor)
(TD Editor)
Line 92: Line 92:
 
|Parlabel=Continuous Length
 
|Parlabel=Continuous Length
 
|Parname=contlength
 
|Parname=contlength
|Parsummary=
+
|Parsummary=Calculates the incremental lengths of the geometry points if a non-integer generational value is used. As with <span class="tipTextSOP">Continuous Angles</span>, if the <span class="tipTextSOP">Generations</span> field is animating, this should be set to ensure smooth, continuous growth. The <span class="tipTextSOP">Continuous Width</span> field applies to tube thickness.
 
|OPfamily=SOP
 
|OPfamily=SOP
 
}}
 
}}
Line 100: Line 100:
 
|Parlabel=Continuous Width
 
|Parlabel=Continuous Width
 
|Parname=contwidth
 
|Parname=contwidth
|Parsummary=
+
|Parsummary=Calculates the incremental lengths of the geometry points if a non-integer generational value is used. As with <span class="tipTextSOP">Continuous Angles</span>, if the <span class="tipTextSOP">Generations</span> field is animating, this should be set to ensure smooth, continuous growth. The <span class="tipTextSOP">Continuous Width</span> field applies to tube thickness.
 
|OPfamily=SOP
 
|OPfamily=SOP
 
}}
 
}}
Line 108: Line 108:
 
|Parlabel=Apply Color
 
|Parlabel=Apply Color
 
|Parname=docolor
 
|Parname=docolor
|Parsummary=
+
|Parsummary=Use a TOP to apply color to the L-system as it grows.
 
|OPfamily=SOP
 
|OPfamily=SOP
 
}}
 
}}
Line 117: Line 117:
 
|Parlabel=Image File
 
|Parlabel=Image File
 
|Parname=colormap
 
|Parname=colormap
|Parsummary=
+
|Parsummary=Defines a TOP to use when the <span class="tipTextSOP">Apply Color</span> button is selected. Also see the ` and # turtle operators.
 
|OPfamily=SOP
 
|OPfamily=SOP
 
}}
 
}}

Revision as of 12:02, 13 September 2017

  • Invalid title: ""

Summary
[edit]

The Lsystem SOP implements L-systems (Lindenmayer-systems, named after Aristid Lindenmayer (1925-1989)), allow definition of complex shapes through the use of iteration. They use a mathematical language in which an initial string of characters is evaluated repeatedly, and the results are used to generate geometry. The result of each evaluation becomes the basis for the next iteration of geometry, giving the illusion of growth.

You begin building an L-system by defining a sequence of rules which are evaluated to produce a new string of characters. Each character of the new string represents one command which affects an imaginary stylus, or "turtle". Repeating this process will grow your geometry.

You can use L-systems to create things such as:

  • Create organic objects such as trees, plants, flowers over time.
  • Create animated branching objects such as lightning and snowflakes.

The file can be read in from disk or from the web. Use http:// when specifying a URL.

The Algorithmic Beauty of Plants

The descriptions located here should be enough to get you started in writing your own L-system rules, however, if you have any serious interests in creating L-systems, you should obtain the book:

The Algorithmic Beauty of Plants			
Przemyslaw Prusinkiewicz & Aristid Lindenmayer			
Springer-Verlag, New York, Phone: 212.460.1500			
ISBN: 0-387-94676-4, 1996.			

which is the definitive reference on the subject. It contains a multitude of L-systems examples complete with descriptions of the ideas and theories behind modelling realistic plant growth.

PythonIcon.png[[{{{opClass}}}]]


Parameters - Page

Template:ParMenu Template:ParFloat Template:ParFloat Template:ParInteger Template:ParToggle Template:ParToggle Template:ParToggle Template:ParToggle Template:ParTopRef Template:ParFloat Template:ParToggle


Parameters - Page

Template:ParInteger Template:ParInteger Template:ParFloat Template:ParFloat Template:ParFloat Template:ParFloat Template:ParToggle Template:ParFloat


Parameters - Page

Template:ParFloat Template:ParFloat Template:ParFloat Template:ParFloat Template:ParFloat Template:ParFloat Template:ParFloat Template:ParFloat


Parameters - Page

Template:ParTopRef Template:ParString Template:ParString Template:ParString Template:ParString Template:ParString Template:ParDatRef

TouchDesigner Build:

SOPs
Add • Alembic • Align • Arm • Attribute Create • Attribute • Basis • Blend • Bone Group • Boolean • Box • Bridge • Cache • Cap • Capture Region • Capture • Carve • CHOP to • Circle • Clay • Clip • Convert • Copy • CPlusPlus • Creep • Curveclay • Curvesect • DAT to • Deform • Delete • Divide • Extrude • Facet • File In • Fillet • Fit • Font • Force • Fractal • Grid • Group • Hole • Import Select • In • Introduction To SOPs id • Inverse Curve • Iso Surface • Join • Joint • Kinect • Lattice • Limit • Line • Line Thick • LOD • LSystem • Magnet • Material • Merge • Metaball • Model • Noise • Null • Object Merge • Oculus Rift • OpenVR • Out • Particle • Point • Polyloft • Polypatch • Polyreduce • Polyspline • Polystitch • Primitive • Profile • Project • Rails • Raster • Ray • Rectangle • Refine • Resample • Revolve • Script • Select • Sequence Blend • Skin • Sort • Sphere • Spring • Sprite • Stitch • Subdivide • Superquad • Surfsect • Sweep • Switch • Text • Texture • Torus • Trace • Trail • Transform • Trim • Tristrip • Tube • Twist • Vertex • Wireframe • ZED

An Operator Family that reads, creates and modifies 3D polygons, curves, NURBS surfaces, spheres, meatballs and other 3D surface data.