From 3739ef59d6ffde0f8833626b8fee143a26470e9f Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Tue, 10 Apr 2007 05:38:15 +0000 Subject: lots of curves inspired by Golan Levin's processing shapers svn path=/trunk/externals/mapping/; revision=7553 --- help/breakpoint_smooth-help.pd | 201 ++++++++++++++++++++++++++--------------- 1 file changed, 127 insertions(+), 74 deletions(-) (limited to 'help/breakpoint_smooth-help.pd') diff --git a/help/breakpoint_smooth-help.pd b/help/breakpoint_smooth-help.pd index d0ace73..7a8110e 100644 --- a/help/breakpoint_smooth-help.pd +++ b/help/breakpoint_smooth-help.pd @@ -1,78 +1,131 @@ -#N canvas 230 45 885 734 10; -#X obj 20 38 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144 +#N canvas 377 72 526 441 10; +#X obj 384 32 import mapping ggee; +#X obj 5 2 cnv 15 500 20 empty empty breakpoint_smooth 2 11 1 18 -233017 +-66577 0; +#X msg 471 2 pddp; +#X text 304 393 released under the GNU GPL; +#X text 179 362 For more info:; +#X floatatom 25 127 8 0 0 0 - - -; +#X floatatom 25 288 8 0 0 0 - - -; +#X obj 28 305 hsl 200 20 0 1 0 0 empty empty curved_output 22 11 1 +12 -262144 -1 -1 0 1; +#X obj 28 101 hsl 200 20 0 1 0 0 empty empty raw_input 22 11 1 12 -261681 -1 -1 0 1; -#X obj 20 213 vsl 15 128 0 1 0 0 empty empty empty 0 -8 0 8 -262144 --1 -1 0 1; -#X floatatom 91 156 5 0 0 0 - - -; -#X floatatom 162 157 5 0 0 0 - - -; -#X floatatom 144 247 5 0 1 0 - - -; -#X obj 144 271 t b f; -#X floatatom 236 247 5 0 1 0 - - -; -#X obj 236 271 t b f; -#X obj 82 271 loadbang; -#X text 214 185 XY relation of the breakpoint object; -#N canvas 0 0 450 300 float 0; -#X obj 71 23 inlet; -#X obj 48 191 outlet; -#X obj 150 22 inlet; -#X obj 71 93 list prepend; -#X obj 71 118 list; -#X obj 48 141 list; -#X obj 48 166 list trim; -#X obj 150 45 t b b; -#X msg 150 70 list; -#X connect 0 0 3 0; -#X connect 2 0 7 0; +#N canvas 273 69 474 407 draw_array 0; +#X msg 54 82 bang; +#X obj 54 133 until; +#X text 85 82 start; +#X obj 54 155 f; +#X obj 83 155 + 1; +#X obj 54 43 loadbang; +#X obj 54 210 trigger float float; +#X obj 127 157 select 0; +#X obj 66 343 tabwrite \$0-curve; +#X obj 139 53 trigger bang float; +#X obj 83 177 mod 200; +#X obj 54 254 / 200; +#X text 96 254 mapping output range: 0 to 1; +#N canvas 0 22 461 369 receive 0; +#X obj 253 33 receive \$0-y; +#X obj 253 57 moses; +#X obj 280 78 moses 201; +#X obj 331 99 bang; +#X msg 331 120 200; +#X obj 238 98 bang; +#X msg 238 119 0; +#X obj 91 56 moses; +#X obj 118 77 moses 201; +#X obj 169 98 bang; +#X msg 169 119 200; +#X obj 76 97 bang; +#X msg 76 118 0; +#X obj 91 32 receive \$0-x; +#X obj 117 289 receive \$0-x-slider; +#X floatatom 118 312 5 0 0 0 - - -; +#X floatatom 279 313 5 0 0 0 - - -; +#X obj 280 290 receive \$0-y-slider; +#X obj 118 169 / 200; +#X obj 280 170 / 200; +#X obj 118 249 send \$0-x-slider-receive; +#X obj 280 250 send \$0-y-slider-receive; +#X msg 281 193 1 \$1; +#X obj 280 221 -; +#X connect 0 0 1 0; +#X connect 1 0 5 0; +#X connect 1 1 2 0; +#X connect 2 0 19 0; +#X connect 2 1 3 0; #X connect 3 0 4 0; -#X connect 4 0 3 1; -#X connect 4 0 5 1; +#X connect 4 0 19 0; #X connect 5 0 6 0; -#X connect 6 0 1 0; -#X connect 7 0 8 0; -#X connect 7 1 5 0; -#X connect 8 0 3 1; -#X restore 82 353 pd float to list ___________; -#N canvas 0 0 450 300 generate 0; -#X obj 55 38 inlet; -#X msg 55 65 0; -#X obj 55 91 f; -#X obj 55 164 + 1; -#X obj 55 137 t f f; -#X obj 85 192 outlet; -#X obj 148 192 outlet; -#X obj 148 166 t b; -#X obj 85 164 / 100; -#X obj 55 114 moses 101; -#X connect 0 0 1 0; -#X connect 1 0 2 0; -#X connect 2 0 9 0; -#X connect 3 0 2 0; -#X connect 4 0 3 0; -#X connect 4 1 8 0; -#X connect 7 0 6 0; -#X connect 8 0 5 0; -#X connect 9 0 4 0; -#X connect 9 1 7 0; -#X restore 82 302 pd generate list ___________; -#X text 110 70 for X go thru 0 to \$1 \, Y go thrus 0 to \$2.; -#X text 109 89 for X go thru \$1 to 1 \, Y go thrus \$2 to 1; -#X obj 20 180 breakpoint 0.8 0.3; -#X obj 82 381 multi_slider 100; -#X obj 82 328 breakpoint_smooth 0.8 0.3 _; -#X text 216 19 just like breakpoint \, but with a smooth curve (i.e. -: no breakpoint!). the output value is \$2 for input = \$1.; -#X connect 0 0 14 0; -#X connect 2 0 14 1; -#X connect 3 0 14 2; -#X connect 4 0 5 0; -#X connect 5 0 11 0; -#X connect 5 1 16 1; -#X connect 6 0 7 0; +#X connect 6 0 19 0; #X connect 7 0 11 0; -#X connect 7 1 16 2; -#X connect 8 0 11 0; -#X connect 10 0 15 0; -#X connect 11 0 16 0; -#X connect 11 1 10 1; -#X connect 14 0 1 0; -#X connect 16 0 10 0; +#X connect 7 1 8 0; +#X connect 8 0 18 0; +#X connect 8 1 9 0; +#X connect 9 0 10 0; +#X connect 10 0 18 0; +#X connect 11 0 12 0; +#X connect 12 0 18 0; +#X connect 13 0 7 0; +#X connect 14 0 15 0; +#X connect 17 0 16 0; +#X connect 18 0 20 0; +#X connect 19 0 22 0; +#X connect 22 0 23 0; +#X connect 23 0 21 0; +#X restore 265 348 pd receive from gcanvas; +#X obj 138 9 receive \$0-x-slider; +#X obj 293 12 receive \$0-y-slider; +#X obj 294 50 trigger bang float; +#X obj 54 280 breakpoint_smooth; +#X obj 54 108 cyclone/speedlim 100; +#X connect 0 0 18 0; +#X connect 1 0 3 0; +#X connect 3 0 4 0; +#X connect 3 0 6 0; +#X connect 4 0 10 0; +#X connect 5 0 0 0; +#X connect 6 0 11 0; +#X connect 6 1 8 1; +#X connect 7 0 1 1; +#X connect 9 0 0 0; +#X connect 9 1 17 1; +#X connect 10 0 3 1; +#X connect 10 0 7 0; +#X connect 11 0 17 0; +#X connect 14 0 9 0; +#X connect 15 0 16 0; +#X connect 16 0 0 0; +#X connect 16 1 17 2; +#X connect 17 0 8 0; +#X connect 18 0 1 0; +#X restore 387 71 pd draw_array; +#X obj 158 167 hsl 50 15 0 1 0 0 \$0-y-slider \$0-y-slider-receive +y 5 9 0 11 -204800 -1 -1 0 0; +#X floatatom 165 186 7 0 0 0 - - -; +#X obj 283 360 pddp/open mapping-about; +#X text 37 392 (C) Copyright 2007 Free Software Foundation; +#X obj 282 103 gcanvas 200 200; +#N canvas 0 22 450 300 graph1 0; +#X array \$0-curve 200 float 0; +#X coords 0 1 199 0 200 200 1; +#X restore 282 103 graph; +#X obj 282 308 send \$0-x; +#X obj 424 307 send \$0-y; +#X obj 74 167 hsl 50 15 0 1 0 0 \$0-x-slider \$0-x-slider-receive x +5 9 0 11 -232576 -1 -1 0 0; +#X floatatom 80 187 7 0 0 0 - - -; +#X text 17 39 This object curves the input range using a double-linear +interpolator with two control parameters.; +#X obj 25 217 breakpoint_smooth; +#X connect 5 0 21 0; +#X connect 6 0 7 0; +#X connect 8 0 5 0; +#X connect 10 0 11 0; +#X connect 10 0 21 2; +#X connect 14 0 16 0; +#X connect 14 1 17 0; +#X connect 18 0 19 0; +#X connect 18 0 21 1; +#X connect 21 0 6 0; -- cgit v1.2.1