diff --git a/puredata/livetest.pd b/puredata/livetest.pd index 55f22dc..bc5b202 100644 --- a/puredata/livetest.pd +++ b/puredata/livetest.pd @@ -1,17 +1,351 @@ -#N canvas 501 449 450 300 12; -#X obj 117 88 netsend -u -b; -#X msg 117 45 connect localhost 57001; -#X obj 169 179 list prepend send; -#X obj 169 204 list trim; -#X obj 169 147 oscformat -f i flow; -#X obj 284 80 hradio 15 1 0 8 empty empty empty 0 -8 0 10 -262144 -1 --1 2; -#X obj 284 100 + 1; -#X floatatom 338 126 5 0 0 0 - - -; +#N canvas 0 23 1440 803 12; +#X obj 232 291 f; +#X obj 232 315 + 1; +#X obj 232 339 mod; +#X floatatom 232 363 5 0 0 0 - - -; +#X floatatom 281 344 5 0 0 0 - - -; +#X obj 308 145 gauss 1 0; +#X obj 308 115 metro 100; +#X obj 308 95 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 308 193 sel 1; +#X obj 308 169 > 1; +#X obj 308 222 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 389 91 vsl 30 128 1 3 0 0 empty empty empty 0 -9 0 10 -262144 +-1 -1 9900 1; +#X floatatom 389 227 5 0 0 0 - - -; +#X obj 166 124 retro2 1000 30000; +#X obj 166 172 retro2 1000 30000; +#X obj 135 202 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 26 202 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1 +-1; +#X obj 26 137 rscan2 1000 2000; +#X obj 281 276 bng 15 250 50 0 empty INFO news! 17 7 0 10 -262144 -1 +-1; +#X obj 281 320 tabread entries; +#X msg 281 296 0; +#X obj 232 399 s FLOW; +#X obj 699 274 f; +#X obj 699 298 + 1; +#X obj 699 322 mod; +#X floatatom 748 327 5 0 0 0 - - -; +#X obj 795 158 gauss 1 0; +#X obj 795 128 metro 100; +#X obj 795 108 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 795 206 sel 1; +#X obj 795 182 > 1; +#X obj 795 235 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 876 104 vsl 30 128 1 3 0 0 empty empty empty 0 -9 0 10 -262144 +-1 -1 0 1; +#X floatatom 876 240 5 0 0 0 - - -; +#X msg 513 126 5; +#X obj 653 137 retro2 1000 30000; +#X obj 653 185 retro2 1000 30000; +#X obj 622 215 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 513 215 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 513 150 rscan2 1000 2000; +#X obj 748 259 bng 15 250 50 0 empty INFO news! 17 7 0 10 -262144 -1 +-1; +#X obj 748 303 tabread entries; +#X obj 699 396 s FLOW; +#N canvas 0 23 593 706 base 0; +#X obj 34 66 oscformat -f i flow; +#X obj 55 182 oscformat -f b info; +#N canvas 0 23 450 292 websocket 0; +#X obj 20 117 netsend -u -b; +#X msg 20 74 connect localhost 57001; +#X obj 310 138 oscparse; +#X obj 310 114 netreceive -u -b; +#X msg 310 74 listen 57000; +#X obj 158 125 inlet; +#X obj 158 175 list prepend send; +#X obj 158 200 list trim; +#X obj 181 18 loadbang; +#X obj 310 162 list trim; +#X obj 310 186 outlet; #X connect 1 0 0 0; -#X connect 2 0 3 0; -#X connect 3 0 0 0; -#X connect 4 0 2 0; +#X connect 2 0 9 0; +#X connect 3 0 2 0; +#X connect 4 0 3 0; #X connect 5 0 6 0; -#X connect 6 0 4 0; -#X connect 7 0 4 0; +#X connect 6 0 7 0; +#X connect 7 0 0 0; +#X connect 8 0 1 0; +#X connect 8 0 4 0; +#X connect 9 0 10 0; +#X restore 34 215 pd websocket talk; +#X obj 55 158 metro 10000; +#X obj 55 138 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 +1; +#X obj 34 255 route info; +#X obj 48 285 print info; +#X obj 34 352 route entries flags bodies objects ones; +#X obj 446 551 table flag; +#X obj 446 581 table body; +#X obj 446 611 table object; +#X obj 446 641 table any; +#X obj 88 553 list trim; +#X msg 168 627 \; entries 0 72 12 16 25 19 \;; +#X msg 168 597 set \, addsemi; +#X obj 88 422 list prepend add flag 0; +#X obj 142 452 list prepend add body 0; +#X obj 196 482 list prepend add object 0; +#X obj 250 512 list prepend add any 0; +#X obj 88 578 t b a b; +#X obj 446 521 table entries; +#X obj 34 392 list prepend add entries 0; +#X obj 145 283 bng 15 250 50 0 INFO empty news! 17 7 0 10 -262144 -1 +-1; +#X obj 34 36 r FLOW; +#X obj 55 108 loadbang; +#X obj 121 26 print flow; +#X connect 0 0 2 0; +#X connect 1 0 2 0; +#X connect 2 0 5 0; +#X connect 3 0 1 0; +#X connect 4 0 3 0; +#X connect 5 0 7 0; +#X connect 5 0 22 0; +#X connect 7 0 21 0; +#X connect 7 1 15 0; +#X connect 7 2 16 0; +#X connect 7 3 17 0; +#X connect 7 4 18 0; +#X connect 12 0 19 0; +#X connect 14 0 13 0; +#X connect 15 0 12 0; +#X connect 16 0 12 0; +#X connect 17 0 12 0; +#X connect 18 0 12 0; +#X connect 19 0 13 0; +#X connect 19 1 13 0; +#X connect 19 2 14 0; +#X connect 21 0 12 0; +#X connect 23 0 0 0; +#X connect 23 0 25 0; +#X connect 24 0 4 0; +#X restore 20 26 pd base; +#X text 163 55 ALL; +#X msg 748 279 1; +#X obj 699 349 tabread flag; +#X floatatom 699 373 5 0 0 0 - - -; +#X text 668 69 FLAG; +#X obj 1179 274 f; +#X obj 1179 298 + 1; +#X obj 1179 322 mod; +#X floatatom 1228 327 5 0 0 0 - - -; +#X obj 1275 158 gauss 1 0; +#X obj 1275 128 metro 100; +#X obj 1275 108 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 +0 1; +#X obj 1275 206 sel 1; +#X obj 1275 182 > 1; +#X obj 1275 235 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 1356 104 vsl 30 128 1 3 0 0 empty empty empty 0 -9 0 10 -262144 +-1 -1 0 1; +#X floatatom 1356 240 5 0 0 0 - - -; +#X msg 993 126 5; +#X obj 1133 137 retro2 1000 30000; +#X obj 1133 185 retro2 1000 30000; +#X obj 1102 215 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 993 215 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 993 150 rscan2 1000 2000; +#X obj 1228 259 bng 15 250 50 0 empty INFO news! 17 7 0 10 -262144 +-1 -1; +#X obj 1228 303 tabread entries; +#X obj 1179 396 s FLOW; +#X floatatom 1179 373 5 0 0 0 - - -; +#X obj 459 624 f; +#X obj 459 648 + 1; +#X obj 459 672 mod; +#X floatatom 508 677 5 0 0 0 - - -; +#X obj 555 508 gauss 1 0; +#X obj 555 478 metro 100; +#X obj 555 458 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 555 556 sel 1; +#X obj 555 532 > 1; +#X obj 555 585 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 636 454 vsl 30 128 1 3 0 0 empty empty empty 0 -9 0 10 -262144 +-1 -1 9400 1; +#X floatatom 636 590 5 0 0 0 - - -; +#X msg 273 476 5; +#X obj 413 487 retro2 1000 30000; +#X obj 413 535 retro2 1000 30000; +#X obj 382 565 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 303 525 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 273 500 rscan2 1000 2000; +#X obj 508 609 bng 15 250 50 0 empty INFO news! 17 7 0 10 -262144 -1 +-1; +#X obj 508 653 tabread entries; +#X obj 459 746 s FLOW; +#X floatatom 459 723 5 0 0 0 - - -; +#X obj 939 624 f; +#X obj 939 648 + 1; +#X obj 939 672 mod; +#X floatatom 988 677 5 0 0 0 - - -; +#X obj 1035 508 gauss 1 0; +#X obj 1035 478 metro 100; +#X obj 1035 458 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 +0 1; +#X obj 1035 556 sel 1; +#X obj 1035 532 > 1; +#X obj 1035 585 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 1116 454 vsl 30 128 1 3 0 0 empty empty empty 0 -9 0 10 -262144 +-1 -1 0 1; +#X floatatom 1116 590 5 0 0 0 - - -; +#X msg 753 476 5; +#X obj 893 487 retro2 1000 30000; +#X obj 893 535 retro2 1000 30000; +#X obj 862 565 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 753 565 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 +-1 -1; +#X obj 753 500 rscan2 1000 2000; +#X obj 988 609 bng 15 250 50 0 empty INFO news! 17 7 0 10 -262144 -1 +-1; +#X obj 988 653 tabread entries; +#X obj 939 746 s FLOW; +#X floatatom 939 723 5 0 0 0 - - -; +#X text 1148 69 BODY; +#X msg 1228 279 2; +#X msg 508 629 3; +#X msg 988 629 4; +#X text 428 419 OBJECT; +#X text 908 419 ANY; +#X obj 1179 349 tabread body; +#X obj 459 699 tabread object; +#X obj 939 699 tabread any; +#X msg 26 113 15; +#X connect 0 0 1 0; +#X connect 1 0 0 1; +#X connect 1 0 2 0; +#X connect 2 0 3 0; +#X connect 3 0 21 0; +#X connect 5 0 9 0; +#X connect 6 0 5 0; +#X connect 7 0 6 0; +#X connect 8 0 10 0; +#X connect 9 0 8 0; +#X connect 10 0 0 0; +#X connect 11 0 12 0; +#X connect 12 0 9 1; +#X connect 13 0 0 0; +#X connect 14 0 0 0; +#X connect 16 0 0 0; +#X connect 17 0 16 0; +#X connect 17 1 15 0; +#X connect 18 0 20 0; +#X connect 19 0 2 1; +#X connect 19 0 4 0; +#X connect 20 0 19 0; +#X connect 22 0 23 0; +#X connect 23 0 22 1; +#X connect 23 0 24 0; +#X connect 24 0 46 0; +#X connect 26 0 30 0; +#X connect 27 0 26 0; +#X connect 28 0 27 0; +#X connect 29 0 31 0; +#X connect 30 0 29 0; +#X connect 31 0 22 0; +#X connect 32 0 33 0; +#X connect 33 0 30 1; +#X connect 34 0 39 0; +#X connect 35 0 22 0; +#X connect 36 0 22 0; +#X connect 38 0 22 0; +#X connect 39 0 38 0; +#X connect 39 1 37 0; +#X connect 40 0 45 0; +#X connect 41 0 24 1; +#X connect 41 0 25 0; +#X connect 45 0 41 0; +#X connect 46 0 47 0; +#X connect 47 0 42 0; +#X connect 49 0 50 0; +#X connect 50 0 49 1; +#X connect 50 0 51 0; +#X connect 51 0 121 0; +#X connect 53 0 57 0; +#X connect 54 0 53 0; +#X connect 55 0 54 0; +#X connect 56 0 58 0; +#X connect 57 0 56 0; +#X connect 58 0 49 0; +#X connect 59 0 60 0; +#X connect 60 0 57 1; +#X connect 61 0 66 0; +#X connect 62 0 49 0; +#X connect 63 0 49 0; +#X connect 65 0 49 0; +#X connect 66 0 65 0; +#X connect 66 1 64 0; +#X connect 67 0 116 0; +#X connect 68 0 51 1; +#X connect 68 0 52 0; +#X connect 70 0 69 0; +#X connect 71 0 72 0; +#X connect 72 0 71 1; +#X connect 72 0 73 0; +#X connect 73 0 122 0; +#X connect 75 0 79 0; +#X connect 76 0 75 0; +#X connect 77 0 76 0; +#X connect 78 0 80 0; +#X connect 79 0 78 0; +#X connect 80 0 71 0; +#X connect 81 0 82 0; +#X connect 82 0 79 1; +#X connect 83 0 88 0; +#X connect 84 0 71 0; +#X connect 85 0 71 0; +#X connect 87 0 71 0; +#X connect 88 0 87 0; +#X connect 88 1 86 0; +#X connect 89 0 117 0; +#X connect 90 0 73 1; +#X connect 90 0 74 0; +#X connect 92 0 91 0; +#X connect 93 0 94 0; +#X connect 94 0 93 1; +#X connect 94 0 95 0; +#X connect 95 0 123 0; +#X connect 97 0 101 0; +#X connect 98 0 97 0; +#X connect 99 0 98 0; +#X connect 100 0 102 0; +#X connect 101 0 100 0; +#X connect 102 0 93 0; +#X connect 103 0 104 0; +#X connect 104 0 101 1; +#X connect 105 0 110 0; +#X connect 106 0 93 0; +#X connect 107 0 93 0; +#X connect 109 0 93 0; +#X connect 110 0 109 0; +#X connect 110 1 108 0; +#X connect 111 0 118 0; +#X connect 112 0 95 1; +#X connect 112 0 96 0; +#X connect 114 0 113 0; +#X connect 116 0 68 0; +#X connect 117 0 90 0; +#X connect 118 0 112 0; +#X connect 121 0 70 0; +#X connect 122 0 92 0; +#X connect 123 0 114 0; +#X connect 124 0 17 0; diff --git a/puredata/nodejs/sender.js b/puredata/nodejs/sender.js index 45d1563..aa67200 100644 --- a/puredata/nodejs/sender.js +++ b/puredata/nodejs/sender.js @@ -19,31 +19,72 @@ Promise.all([ }); socket.on('disconnect', () => console.log("[osc-receiver] i'm disconnected.")); - // (puredata) - // socket.on('key', k => { - // if (k.value == 1) - // udp.send({ - // address: "/voice", - // args: [{type: "f", value: k.seat}, {type: "f", value: k.id + 1}] - // }); - // }); - - // + //from browser socket.on('post', p => { console.log('post', p); }); - // - socket.on('flow', f => { - console.log('flow', f); - }); - - // + //from puredata udp.on("message", function (m) { - console.log("osc(pd)", m); + // console.log("osc(pd)", m); + + // if (m.address == '/flow') { - console.log(m.args[0].value); - socket.emit('flow', m.args[0].value) + socket.emit('flow', m.args[0].value); + } + + // + else if (m.address == '/info') { + socket.emit('info', (fields) => { + console.log(fields.length); + // + var flags = []; + for (let k = 0; k < fields.length; k++) { + if (fields[k].group == "flag") flags.push({type:'f', value:k}); + } + udp.send({ + address: '/info/flags', + args: flags + }) + // + var bodies = []; + for (let k = 0; k < fields.length; k++) { + if (fields[k].group == "body") bodies.push({type:'f', value:k}); + } + udp.send({ + address: '/info/bodies', + args: bodies + }) + // + var objects = []; + for (let k = 0; k < fields.length; k++) { + if (fields[k].group == "object") objects.push({type:'f', value:k}); + } + udp.send({ + address: '/info/objects', + args: objects + }) + // + var ones = []; + for (let k = 0; k < fields.length; k++) { + if (fields[k].group == "any") ones.push({type:'f', value:k}); + } + udp.send({ + address: '/info/ones', + args: ones + }) + // + udp.send({ + address: '/info/entries', + args:[ + {type: 'f', value: fields.length}, + {type: 'f', value: flags.length}, + {type: 'f', value: bodies.length}, + {type: 'f', value: objects.length}, + {type: 'f', value: ones.length}, + ] + }); + }); } }); diff --git a/puredata/retro-help.pd b/puredata/retro-help.pd new file mode 100644 index 0000000..3cdb8dc --- /dev/null +++ b/puredata/retro-help.pd @@ -0,0 +1,16 @@ +#N canvas 1 89 370 282 12; +#X obj 94 124 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 94 189 print; +#X msg 189 95 1000 4000; +#X obj 94 143 retro 200 1800; +#X msg 200 125 200 1800; +#X text 2 7 <<<; +#X text 322 7 >>>; +#X text 2 237 <<<; +#X text 322 237 >>>; +#X text 95 39 * a randomized metro !; +#X connect 0 0 3 0; +#X connect 2 0 3 1; +#X connect 3 0 1 0; +#X connect 4 0 3 1; diff --git a/puredata/retro.pd b/puredata/retro.pd new file mode 100644 index 0000000..719e226 --- /dev/null +++ b/puredata/retro.pd @@ -0,0 +1,57 @@ +#N canvas 310 409 364 373 12; +#X obj 43 211 del; +#X obj 43 261 spigot; +#X obj 139 72 tgl 15 0 empty empty empty 17 7 0 10 -4160 -257985 -1 +1 1; +#X obj 234 86 expr \$2-\$1; +#X obj 145 216 random; +#X obj 234 36 loadbang; +#X obj 82 235 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 +1; +#X obj 50 47 inlet; +#X obj 43 286 outlet; +#X obj 50 104 t b f; +#X obj 113 191 t b b; +#X obj 158 72 bng 10 250 50 0 empty empty empty 17 7 0 10 -257985 -4160 +-1; +#X text 2 7 <<<; +#X text 322 7 >>>; +#X text 2 337 <<<; +#X text 322 337 >>>; +#X obj 118 285 inlet; +#X obj 118 310 unpack f f; +#X obj 204 305 expr $f2-$f1; +#X floatatom 234 197 5 0 0 0 range - -; +#X floatatom 289 223 5 0 0 0 start - -; +#X obj 289 117 f \$1; +#X obj 145 242 +; +#X obj 234 61 t b b; +#X floatatom 171 69 5 0 0 1 r - -; +#X obj 288 278 outlet; +#X connect 0 0 1 0; +#X connect 1 0 8 0; +#X connect 1 0 11 0; +#X connect 2 0 9 0; +#X connect 3 0 19 0; +#X connect 4 0 22 0; +#X connect 5 0 23 0; +#X connect 6 0 1 1; +#X connect 7 0 2 0; +#X connect 9 0 11 0; +#X connect 9 1 6 0; +#X connect 10 0 0 0; +#X connect 10 1 4 0; +#X connect 11 0 10 0; +#X connect 16 0 17 0; +#X connect 16 0 18 0; +#X connect 17 0 20 0; +#X connect 18 0 19 0; +#X connect 19 0 4 1; +#X connect 20 0 22 1; +#X connect 21 0 20 0; +#X connect 22 0 0 1; +#X connect 22 0 24 0; +#X connect 22 0 25 0; +#X connect 23 0 3 0; +#X connect 23 1 21 0; +#X coords 0 -1 1 1 85 40 1 135 50; diff --git a/puredata/retro2.pd b/puredata/retro2.pd new file mode 100644 index 0000000..f8ca188 --- /dev/null +++ b/puredata/retro2.pd @@ -0,0 +1,62 @@ +#N canvas 805 23 356 386 12; +#X obj 45 286 del; +#X obj 22 310 spigot; +#X obj 139 72 tgl 15 0 empty empty empty 17 7 0 10 -4160 -257985 -1 +0 1; +#X obj 76 186 random; +#X obj 236 99 loadbang; +#X obj 106 289 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 +1; +#X obj 22 36 inlet; +#X obj 22 342 outlet; +#X obj 157 72 bng 10 250 50 0 empty empty empty 17 7 0 10 -257985 -4160 +-1; +#X obj 236 29 inlet; +#X floatatom 165 140 5 0 0 3 range - -; +#X floatatom 238 180 5 0 0 3 start - -; +#X obj 76 250 +; +#X floatatom 170 69 5 0 0 1 r - -; +#X obj 173 317 outlet; +#X msg 202 238 stop; +#X obj 22 66 sel 1 0; +#X obj 202 212 t b b; +#X msg 243 255 0; +#X msg 161 236 1; +#X obj 22 104 t b b b; +#X obj 45 154 t b b; +#X obj 236 51 expr $f2-$f1 \; $f1; +#X obj 236 121 expr \$2-\$1 \; \$1; +#X text 20 7 retro->retro2: start bang/ stop->delay stop; +#X text 24 208 <-- initial bang bypass; +#X connect 0 0 1 0; +#X connect 1 0 7 0; +#X connect 1 0 8 0; +#X connect 2 0 16 0; +#X connect 3 0 12 0; +#X connect 4 0 23 0; +#X connect 5 0 1 1; +#X connect 6 0 2 0; +#X connect 8 0 21 0; +#X connect 9 0 22 0; +#X connect 10 0 3 1; +#X connect 11 0 12 1; +#X connect 12 0 0 1; +#X connect 12 0 13 0; +#X connect 12 0 14 0; +#X connect 15 0 0 0; +#X connect 16 0 20 0; +#X connect 16 1 17 0; +#X connect 17 0 15 0; +#X connect 17 1 18 0; +#X connect 18 0 5 0; +#X connect 19 0 5 0; +#X connect 20 0 1 0; +#X connect 20 1 21 0; +#X connect 20 2 19 0; +#X connect 21 0 0 0; +#X connect 21 1 3 0; +#X connect 22 0 10 0; +#X connect 22 1 11 0; +#X connect 23 0 10 0; +#X connect 23 1 11 0; +#X coords 0 -1 1 1 85 40 1 135 50; diff --git a/puredata/rscan.pd b/puredata/rscan.pd new file mode 100644 index 0000000..8d6538b --- /dev/null +++ b/puredata/rscan.pd @@ -0,0 +1,55 @@ +#N canvas 125 216 408 490 12; +#X obj 120 365 f; +#X obj 84 365 + 1; +#X obj 218 340 sel 1; +#X msg 138 340 0; +#X obj 218 315 ==; +#X obj 236 205 - 1; +#X obj 39 81 inlet; +#X msg 179 225 0; +#X msg 106 224 1; +#X obj 106 165 t b b a; +#X msg 39 225 0; +#X obj 236 230 max 0; +#X text 5 4 <<<; +#X text 345 4 >>>; +#X text 5 454 <<<; +#X text 345 454 >>>; +#X text 39 22 generate numbers from 0 to given (inlet-1); +#X text 84 82 1-command:; +#X text 124 98 - number-> target value; +#X text 124 112 - if <= 0 \, stop immediately; +#X obj 39 135 moses 1; +#X obj 278 385 outlet; +#X text 278 364 2#end bng; +#X msg 39 310 bang; +#X obj 120 390 t a a; +#X floatatom 152 415 5 0 0 0 - - -; +#X obj 152 439 outlet; +#X text 202 439 1#values; +#X obj 91 271 retro \$1 \$2; +#X text 39 38 arguments: random range => \$1 ~ \$2; +#X connect 0 0 1 0; +#X connect 0 0 24 0; +#X connect 1 0 0 1; +#X connect 2 0 7 0; +#X connect 2 0 21 0; +#X connect 3 0 0 1; +#X connect 4 0 2 0; +#X connect 5 0 11 0; +#X connect 6 0 20 0; +#X connect 7 0 28 0; +#X connect 8 0 28 0; +#X connect 9 0 8 0; +#X connect 9 1 3 0; +#X connect 9 2 5 0; +#X connect 10 0 23 0; +#X connect 10 0 28 0; +#X connect 11 0 4 1; +#X connect 20 0 10 0; +#X connect 20 1 9 0; +#X connect 23 0 21 0; +#X connect 24 0 4 0; +#X connect 24 1 25 0; +#X connect 25 0 26 0; +#X connect 28 0 0 0; diff --git a/puredata/rscan2.pd b/puredata/rscan2.pd new file mode 100644 index 0000000..487ca30 --- /dev/null +++ b/puredata/rscan2.pd @@ -0,0 +1,59 @@ +#N canvas 92 211 408 490 12; +#X obj 120 365 f; +#X obj 84 365 + 1; +#X obj 218 340 sel 1; +#X msg 138 340 0; +#X obj 218 315 ==; +#X obj 236 205 - 1; +#X obj 39 81 inlet; +#X msg 179 225 0; +#X msg 106 224 1; +#X obj 106 165 t b b a; +#X msg 39 225 0; +#X obj 236 230 max 0; +#X text 5 4 <<<; +#X text 345 4 >>>; +#X text 5 454 <<<; +#X text 345 454 >>>; +#X text 39 22 generate numbers from 0 to given (inlet-1); +#X text 84 82 1-command:; +#X text 124 98 - number-> target value; +#X text 124 112 - if <= 0 \, stop immediately; +#X obj 39 135 moses 1; +#X obj 278 385 outlet; +#X text 278 364 2#end bng; +#X msg 39 310 bang; +#X obj 120 390 t a a; +#X floatatom 152 415 5 0 0 0 - - -; +#X obj 152 439 outlet; +#X text 202 439 1#values; +#X text 39 38 arguments: random range => \$1 ~ \$2; +#X obj 96 268 retro2 \$1 \$2; +#X obj 289 242 inlet; +#X text 288 262 2-random range; +#X connect 0 0 1 0; +#X connect 0 0 24 0; +#X connect 1 0 0 1; +#X connect 2 0 7 0; +#X connect 2 0 21 0; +#X connect 3 0 0 1; +#X connect 4 0 2 0; +#X connect 5 0 11 0; +#X connect 6 0 20 0; +#X connect 7 0 29 0; +#X connect 8 0 29 0; +#X connect 9 0 8 0; +#X connect 9 1 3 0; +#X connect 9 2 5 0; +#X connect 10 0 23 0; +#X connect 10 0 29 0; +#X connect 11 0 4 1; +#X connect 20 0 10 0; +#X connect 20 1 9 0; +#X connect 23 0 21 0; +#X connect 24 0 4 0; +#X connect 24 1 25 0; +#X connect 25 0 26 0; +#X connect 29 0 0 0; +#X connect 30 0 29 1; +#X coords 0 -1 1 1 100 60 1 90 250;