diff options
Diffstat (limited to 'semento/sft.commun.sc.constrain.pd')
-rw-r--r-- | semento/sft.commun.sc.constrain.pd | 189 |
1 files changed, 189 insertions, 0 deletions
diff --git a/semento/sft.commun.sc.constrain.pd b/semento/sft.commun.sc.constrain.pd new file mode 100644 index 0000000..0336c48 --- /dev/null +++ b/semento/sft.commun.sc.constrain.pd @@ -0,0 +1,189 @@ +#N canvas 286 32 505 662 10; +#X obj 12 11 inlet; +#X obj 108 565 outlet; +#X text 5 93 RRADICAL_MEMENTO is also in originator; +#X obj 108 538 list; +#X obj 132 318 expr_scale 0 1 \$3 \$4; +#X obj 289 318 expr_scale 0 1 \$3 \$4; +#X obj 176 371 hotpack f f; +#X obj 45 437 demultiplex; +#X obj 108 459 round; +#X obj 45 370 expr_scale 0 1 \$3 \$4; +#X obj 156 11 inlet; +#X obj 286 11 inlet; +#X text 63 590 Use to constrain input to a smaller subset of the full +range. Input as relative to 0-1. Reports back what the result will +be when scaled fully; +#X obj 156 59 s \$0boundLowFull; +#X obj 286 59 s \$0boundHighFull; +#X obj 162 252 r \$0boundLowFull; +#X obj 329 252 r \$0boundHighFull; +#X obj 132 229 r \$0constrainLow; +#X obj 289 230 r \$0constrainHigh; +#X obj 329 277 t b a; +#X obj 162 279 t b a; +#X obj 108 415 r \$0round?; +#X obj 45 459 t a; +#X text 186 548 Read \$1-OSC (== \$0-OSC) \, filter by argument \$2 +; +#X obj 45 188 deeprouteOSC \$2-normalized; +#X obj 187 521 deeprouteOSC \$2; +#X obj 187 497 r \$1-RRADICAL-OSC; +#X obj 45 165 r \$1-RRADICAL-OSC; +#X obj 12 42 prepent \$2; +#X obj 12 69 s \$1-RRADICAL-MEMENTO; +#X obj 108 513 route \$2; +#X obj 108 489 r \$1-in; +#X text 191 538 ^; +#N canvas 0 22 221 199 handleArgs 0; +#X obj 26 26 loadbang; +#X msg 26 127 1; +#X obj 26 102 sel round hide; +#X obj 26 149 s \$0round?; +#X obj 26 78 list-drip; +#X obj 95 149 s \$0hide?; +#X obj 26 53 list append \$5 \$6; +#X connect 0 0 6 0; +#X connect 1 0 3 0; +#X connect 2 0 1 0; +#X connect 2 1 5 0; +#X connect 4 0 2 0; +#X connect 6 0 4 0; +#X restore 297 108 pd handleArgs; +#N canvas 0 22 390 211 listParams 0; +#X obj 31 79 spigot 1; +#X msg 161 62 0; +#X obj 161 39 r \$0hide?; +#X obj 31 49 r \$1/listParams; +#X obj 31 136 s \$1/returnParams; +#X obj 31 106 list append \$2-normalized; +#X text 16 161 listParams is used by Controctopus \, so we return a +special address for 0-1 data input only; +#X connect 0 0 5 0; +#X connect 1 0 0 1; +#X connect 2 0 1 0; +#X connect 3 0 0 0; +#X connect 5 0 4 0; +#X restore 297 133 pd listParams; +#N canvas 0 22 352 303 receiveConstraints 0; +#X obj 80 156 unpack f f; +#X obj 80 200 s \$0constrainLow; +#X obj 137 178 s \$0constrainHigh; +#X obj 16 50 loadbang; +#X msg 16 75 0 1; +#X obj 80 115 list; +#X obj 131 115 t a a; +#X obj 80 87 route get; +#X text 62 264 Used to recall the 0-1 ranged constraint; +#X obj 80 20 r \$1-RRADICAL-OSC; +#X obj 64 245 s \$1-COMMUN-RESPONSE; +#X obj 80 43 deeprouteOSC \$2-constrain; +#X obj 64 224 prepent \$2-constrained-to-0-1; +#X text 145 68 Save the constraints; +#X obj 147 87 commun \$2-constraints \$1; +#X connect 0 0 1 0; +#X connect 0 1 2 0; +#X connect 3 0 4 0; +#X connect 4 0 0 0; +#X connect 4 0 5 1; +#X connect 5 0 0 0; +#X connect 5 0 12 0; +#X connect 6 0 0 0; +#X connect 6 1 5 1; +#X connect 7 0 5 0; +#X connect 7 1 6 0; +#X connect 7 1 14 0; +#X connect 9 0 11 0; +#X connect 11 0 7 0; +#X connect 12 0 10 0; +#X connect 14 0 6 0; +#X restore 297 157 pd receiveConstraints; +#N canvas 323 119 442 277 constraintsFeedback 0; +#X obj 19 35 inlet; +#X obj 19 63 t a a b; +#X msg 58 85 1; +#X obj 19 128 spigot; +#X obj 38 107 s \$1\$2/constraint/lookup/call; +#X obj 67 129 r \$1\$2/constraint/lookup/response; +#X obj 67 151 t a b; +#X msg 94 173 0; +#X obj 19 234 s \$1-COMMUN-RESPONSE; +#X obj 19 213 prepent \$2-constrained-to; +#X text 126 164 Only allow one or the other; +#X text 79 31 Allows one to replace the "scaled output" response with +something prettier (e.g. \, if it actually corresponds to a waveform +selector \, you can return the names); +#X connect 0 0 1 0; +#X connect 1 0 3 0; +#X connect 1 1 4 0; +#X connect 1 2 2 0; +#X connect 2 0 3 1; +#X connect 3 0 9 0; +#X connect 5 0 6 0; +#X connect 6 0 9 0; +#X connect 6 1 7 0; +#X connect 7 0 3 1; +#X connect 9 0 8 0; +#X restore 176 396 pd constraintsFeedback; +#N canvas 488 62 303 238 receiveMultiplier 1; +#X obj 133 63 commun \$2-multiplier \$1; +#X obj 72 15 r \$1-RRADICAL-OSC; +#X obj 72 38 deeprouteOSC \$2-multiplier; +#X obj 72 63 route get; +#X obj 72 98 f; +#X obj 38 171 prepent \$2-multiplier-is; +#X obj 38 194 s \$1-COMMUN-RESPONSE; +#X obj 72 134 s \$0multiplier; +#X obj 123 98 t a a; +#X obj 7 17 loadbang; +#X msg 7 42 1; +#X connect 0 0 8 0; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 4 0; +#X connect 3 1 0 0; +#X connect 3 1 8 0; +#X connect 4 0 7 0; +#X connect 4 0 5 0; +#X connect 5 0 6 0; +#X connect 8 0 7 0; +#X connect 8 1 4 1; +#X connect 9 0 10 0; +#X connect 10 0 7 0; +#X restore 297 181 pd receiveMultiplier; +#X obj 81 391 r \$0multiplier; +#X obj 45 408 *; +#X connect 0 0 28 0; +#X connect 3 0 1 0; +#X connect 4 0 6 0; +#X connect 4 0 9 3; +#X connect 5 0 6 1; +#X connect 5 0 9 4; +#X connect 6 0 36 0; +#X connect 7 0 22 0; +#X connect 7 1 8 0; +#X connect 8 0 22 0; +#X connect 9 0 39 0; +#X connect 10 0 13 0; +#X connect 11 0 14 0; +#X connect 15 0 20 0; +#X connect 16 0 19 0; +#X connect 17 0 4 0; +#X connect 18 0 5 0; +#X connect 19 0 5 0; +#X connect 19 1 5 4; +#X connect 19 1 4 4; +#X connect 20 0 4 0; +#X connect 20 1 5 3; +#X connect 20 1 4 3; +#X connect 21 0 7 1; +#X connect 22 0 3 0; +#X connect 24 0 9 0; +#X connect 25 0 3 0; +#X connect 26 0 25 0; +#X connect 27 0 24 0; +#X connect 28 0 29 0; +#X connect 30 0 3 0; +#X connect 31 0 30 0; +#X connect 38 0 39 1; +#X connect 39 0 7 0; |