I/I-DST_FILT
Arguments: exp &optional c-imp varmap choicemap [generic-function]
Filtering positioned internal distances. The succession of selected object distances in a given region should match a supplied pattern.
For example, if objects are interpreted as chords, the expression (0_5 (0 1 (not (4 4)) 0 u (and (15 15)))) constraints the first six chords so that
each pair of consecutive chords should not have two consecutive thirds in their lower intervals and, at the same
time, should form consecutive minor tenths between the upper and lower notes. Thus a possible solution could
be the chord sequence
(33 40 43 46 48) (34 37 39 41 43) (37 40 43 45 47) (32 37 40 42 44) (30 37 42 44 46) (32 35 37 39 41)
For example, if objects are interpreted as chords, the expression (0_5 (0 1 (not (4 4)) 0 u (and (15 15)))) constraints the first six chords so that
each pair of consecutive chords should not have two consecutive thirds in their lower intervals and, at the same
time, should form consecutive minor tenths between the upper and lower notes. Thus a possible solution could
be the chord sequence
(33 40 43 46 48) (34 37 39 41 43) (37 40 43 45 47) (32 37 40 42 44) (30 37 42 44 46) (32 35 37 39 41)
I<---15------>I I<----15---->I I<----15---->I ...........etc.
'varMap' is a unary function, mapping
variable indexes to internal index+level. 'choiceMap' is a unary
function that is applied to the instance before invoking the constraint.
variable indexes to internal index+level. 'choiceMap' is a unary
function that is applied to the instance before invoking the constraint.