generative-toolbelt.path

A set of functions to create, manage, and draw Paths.
Paths are lists of Points like this: ({:x 100 :y 100} {:x 200 :y 100} {:x 300 :y 100} {:x 300 :y 200} ).

chaikin-path

(chaikin-path path iteration chaikParam)
Approximate a Path with the chaikin subdivision alorithm, smoothing the original Path.
`iteration` defines the desired iterations number.
`chaikparam` defines the chaikin parameter to use.
   A single number will define a fixed parameter through all iterations, a list of two point will define a range in which a random value will be extracted for each iteration.
Returns a new Path.

chaikin-segment

(chaikin-segment pointA pointB segmentationPoint)
Subfunction of `generative-toolbelt.path/chaikinSubdivision.
Takes two Points and a chaikparam.
Returns a list of two interpolated points.

dispose-fixed-path

(dispose-fixed-path p noiseX noiseY)
Add random noise to all the inner path's points, keeping the first and last point stable.
`noiseX` and `noiseY` defines the aomplitude of the gaussian to generate the noise with.

dispose-path

(dispose-path p noiseX noiseY)
Add random noise to ALL Path's points.
`noiseX` and `noiseY` defines the aomplitude of the gaussian to generate the noise with.

draw-path

(draw-path pointList & [drawOptions])
Draw a Path with both fill and stroke options.

draw-path-fill

(draw-path-fill pointList & [drawOptions])
Draw a Path with only the fill option

draw-path-stroke

(draw-path-stroke pointList & [drawOptions])
Draw a Path with only the stroke operation

line-to-path

(line-to-path line sectionCount)
Convert a Line structure to a Path object
`sectionCount` define how many point the path is made of.