File lindstrp.icn

Summary

###########################################################################

	File:     lindstrp.icn

	Subject:  Procedure to interpret L-system output as striped pattern

	Author:   Ralph E. Griswold

	Date:     September 18, 1996

###########################################################################

   This file is in the public domain.

###########################################################################

  Lindenmayer systems are usually are interpreted as specifications
  for drawing plant-like objects, fractals, or other geometric designs.
  This procedure illustrates that L-systems can be intrepreted in other
  ways -- as striped patterns, for example.

  The procedure is called as lindstrp(prod, band_tbl) where prod is a
  "production" that is interpreted as being a sequence of one-character
  symbols, and band_tbl is a table with these symbols as keys whose
  corresponding values are specifications for bands of the form
  "color:width". An example of a table for the symbols A, B, and C is:

	band_tbl := table()

	band_tbl["A"] := "blue:3"
	band_tbl["B"] := "red:10"
	band_tbl["C"] := "black:5"
  
  With a table default of null, as above, symbols in prod that are not
  table keys are effectively ignored.  Other table defaults
  can be used to produce different behaviors for such symbols.

  An example of a production is:

	"ABCBABC"

  The result is a string of band specifications for the striped pattern
  represented by prod.  It can be converted to an image by using
  strplang.icn, but graphics are not necessary for the use of this
  procedure itself.

  One thing this procedure is useful for is developing an understanding
  of how to construct L-systems for specific purpose:  L-systems for
  plant-like objects and fractals are require specialized knowledge and
  are difficult to construct, while stripes are simple enough for
  anyone to understand and develop L-systems for.

###########################################################################

  See also linden.icn and lindsys.icn.

###########################################################################
Procedures:
lindstrp

This file is part of the (main) package.

Source code.

Details
Procedures:

lindstrp(prod, band_tbl)



This page produced by UniDoc on 2021/04/15 @ 23:59:54.