C.3. Filter ParameterObjects

C.3.1. bypass (b)

bypass

Description: Each input value is returned unaltered.

Arguments: (1) name

Sample Arguments: b

Example C-191. bypass Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
bypass

C.3.2. filterAdd (fa)

filterAdd, parameterObject

Description: Each input value is added to a value produced by a user-supplied ParameterObject.

Arguments: (1) name, (2) parameterObject {operator value generator}

Sample Arguments: fa, (ws,e,30,0,0,1)

Example C-192. filterAdd Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterAdd, (waveSine, event, (constant, 30), 0, (constant, 0), (constant, 1))

C.3.3. filterDivide (fd)

filterDivide, parameterObject

Description: Each input value is divided by a value produced by a user-supplied ParameterObject. Division by zero, if encountered, returns the value of the input value unaltered.

Arguments: (1) name, (2) parameterObject {operator value generator}

Sample Arguments: fd, (ws,e,30,0,0,1)

Example C-193. filterDivide Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterDivide, (waveSine, event, (constant, 30), 0, (constant, 0), (constant,
1))

C.3.4. filterDivideAnchor (fda)

filterDivideAnchor, anchorString, parameterObject

Description: All input values are first shifted so that the position specified by anchor is zero; then each value is divided by the value produced by the parameterObject. All values are then re-shifted so that zero returns to its former position. Division by zero, if encountered, returns the value of the input value unaltered.

Arguments: (1) name, (2) anchorString {'lower', 'upper', 'average', 'median'}, (3) parameterObject {operator value generator}

Sample Arguments: fda, lower, (wc,e,30,0,0,1)

Example C-194. filterDivideAnchor Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterDivideAnchor, lower, (waveCosine, event, (constant, 30), 0, (constant,
0), (constant, 1))

C.3.5. filterFunnelBinary (ffb)

filterFunnelBinary, thresholdMatchString, parameterObject, parameterObject, parameterObject

Description: A dynamic, two-part variable funnel filter. Given values produced by two boundary parameterObjects and a threshold ParameterObject, the output of a Generator ParameterObject value is shifted to one of the boundaries (or the threshold) depending on the relationship of the generated value to the threshold. If the generated value is equal to the threshold, the value may be shifted to the upper or lower value, or retain the threshold value.

Arguments: (1) name, (2) thresholdMatchString {'upper', 'lower', 'match'}, (3) parameterObject {threshold}, (4) parameterObject {first boundary}, (5) parameterObject {second boundary}

Sample Arguments: ffb, u, (bpl,e,s,((0,0),(120,1))), (ws,e,60,0,0.5,0), (wc,e,90,0,0.5,1)

Example C-195. filterFunnelBinary Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterFunnelBinary, upper, (breakPointLinear, event, single, ((0,0),(120,1))),
(waveSine, event, (constant, 60), 0, (constant, 0.5), (constant, 0)),
(waveCosine, event, (constant, 90), 0, (constant, 0.5), (constant, 1))

Example C-196. filterFunnelBinary Demonstration 2

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterFunnelBinary, match, (constant, 0.2), (breakPointLinear, event, loop,
((0,0),(60,0.5))), (breakPointLinear, event, loop, ((0,1),(60,0.5)))

C.3.6. filterMultiply (fm)

filterMultiply, parameterObject

Description: Each input value is multiplied by a value produced by a user-supplied ParameterObject.

Arguments: (1) name, (2) parameterObject {operator value generator}

Sample Arguments: fm, (ws,e,30,0,0,1)

Example C-197. filterMultiply Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterMultiply, (waveSine, event, (constant, 30), 0, (constant, 0), (constant,
1))

C.3.7. filterMultiplyAnchor (fma)

filterMultiplyAnchor, anchorString, parameterObject

Description: All input values are first shifted so that the position specified by anchor is zero; then each value is multiplied by the value produced by the parameterObject. All values are then re-shifted so that zero returns to its former position.

Arguments: (1) name, (2) anchorString {'lower', 'upper', 'average', 'median'}, (3) parameterObject {operator value generator}

Sample Arguments: fma, lower, (wc,e,30,0,0,1)

Example C-198. filterMultiplyAnchor Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterMultiplyAnchor, lower, (waveCosine, event, (constant, 30), 0, (constant,
0), (constant, 1))

C.3.8. filterPower (fp)

filterPower, parameterObject

Description: Each input value is taken to the power of the value produced by a user-supplied ParameterObject.

Arguments: (1) name, (2) parameterObject {operator value generator}

Sample Arguments: fp, (ws,e,30,0,0,1)

Example C-199. filterPower Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterPower, (waveSine, event, (constant, 30), 0, (constant, 0), (constant,
1))

C.3.9. filterQuantize (fq)

filterQuantize, parameterObject, parameterObject, stepCount, parameterObject

Description: Dynamic grid size and grid position quantization filter. For each value provided by the source ParameterObject, a grid is created. This grid is made by taking the number of steps specified by the stepCount integer from the step width Generator ParameterObject. The absolute value of these widths are used to create a grid above and below the reference value, with grid steps taken in order. The value provided by the source ParameterObject is found within this grid, and pulled to the nearest grid line. The degree of pull can be a dynamically allocated with a unit-interval quantize pull ParameterObject. A value of 1 forces all values to snap to the grid; a value of .5 will cause a weighted attraction.

Arguments: (1) name, (2) parameterObject {grid reference value Generator}, (3) parameterObject {step width Generator}, (4) stepCount, (5) parameterObject {unit interval measure of quantize pull}

Sample Arguments: fq, (c,0), (c,0.25), 1, (c,1)

Example C-200. filterQuantize Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterQuantize, (constant, 0), (constant, 0.25), 1, (constant, 1)

Example C-201. filterQuantize Demonstration 2

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
filterQuantize, (cyclicGen, up, 0, 1, 0.003), (basketGen, orderedCyclic,
(0.4,0.6)), 2, (breakPointPower, event, loop, ((0,1),(59,0),(119,1)), -3)

C.3.10. maskFilter (mf)

maskFilter, boundaryString, parameterObject, parameterObject

Description: Each input value is fit between values provided by two boundary Generator ParameterObjects. The fit is determined by the boundaryString: limit will fix the value at the nearest boundary; wrap will wrap the value through the range defined by the boundaries; reflect will bounce values in the opposite direction through the range defined by the boundaries.

Arguments: (1) name, (2) boundaryString {'limit', 'wrap', 'reflect'}, (3) parameterObject {first boundary}, (4) parameterObject {second boundary}

Sample Arguments: mf, l, (ws,e,60,0,0.5,0), (wc,e,90,0,0.5,1)

Example C-202. maskFilter Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
maskFilter, limit, (waveSine, event, (constant, 60), 0, (constant, 0.5),
(constant, 0)), (waveCosine, event, (constant, 90), 0, (constant, 0.5),
(constant, 1))

C.3.11. maskScaleFilter (msf)

maskScaleFilter, min, max, selectionString

Description: Each input value is collected into a list. The resulting list of values is normalized within the unit interval. Values are chosen from this list using the selector specified by the selectionString argument. After selection, this value is scaled within the range designated by min and max; min and max may be specified with ParameterObjects.

Arguments: (1) name, (2) min, (3) max, (4) selectionString {'randomChoice', 'randomWalk', 'randomPermutate', 'orderedCyclic', 'orderedCyclicRetrograde', 'orderedOscillate'}

Sample Arguments: msf, (ws,e,60,0,0.5,0), (wc,e,90,0,0.5,1), rc

Example C-203. maskScaleFilter Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
maskScaleFilter, (waveSine, event, (constant, 60), 0, (constant, 0.5),
(constant, 0)), (waveCosine, event, (constant, 90), 0, (constant, 0.5),
(constant, 1)), randomChoice

C.3.12. orderBackward (ob)

orderBackward

Description: All values input are returned in reversed order.

Arguments: (1) name

Sample Arguments: ob

Example C-204. orderBackward Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
orderBackward

C.3.13. orderRotate (or)

orderRotate, rotationSize

Description: Rotates all input values as many steps as specified; if the number of steps is greater than the number of input values, the modulus of the input length is used.

Arguments: (1) name, (2) rotationSize

Sample Arguments: or, 40

Example C-205. orderRotate Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
orderRotate, 40

C.3.14. pipeLine (pl)

pipeLine, filterParameterObjectList

Description: Provide a list of Filter ParameterObjects; input values are passed through each filter in the user-supplied order from left to right.

Arguments: (1) name, (2) filterParameterObjectList {a list of sequential Filter ParameterObjects}

Sample Arguments: pl, ((or,40),(ob))

Example C-206. pipeLine Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
pipeLine, ((orderRotate, 40), (orderBackward))

C.3.15. replace (r)

replace, parameterObject

Description: Replace input values with values produced by a Generator ParameterObject.

Arguments: (1) name, (2) parameterObject {generator to replace original values}

Sample Arguments: r, (ru,0,1)

Example C-207. replace Demonstration 1

randomUniform, (breakPointLinear, event, loop, ((0,0.5),(120,0))),
(breakPointLinear, event, loop, ((0,0.5),(120,1)))
replace, (randomUniform, (constant, 0), (constant, 1))