Hi Patrick, I"ve made an Euclidean abstraction some time ago... Maybe you can modify it to suit your needs.
It's in my todo list to put my pd objects on a server...! Olivier On Sat, Aug 1, 2015 at 3:48 PM, Pagano, Patrick <[email protected]> wrote: > Hey List > > > I want to be able to create some euclidean patterns for a mutable > instruments hardware eurorack module > > i need to know how to generate a list that looks like this > > > const prog_uint8_t node_0[] PROGMEM = { 255, 0, 0, 0, 0, 0, 145, 0, 0, 0, > 0, 0, 218, 0, 0, 0, 72, 0, 36, 0, 182, 0, 0, 0, 109, 0, 0, 0, 72, 0, 0, 0, > 36, 0, 109, 0, 0, 0, 8, 0, 255, 0, 0, 0, 0, 0, 72, 0, 0, 0, 182, 0, 0, 0, > 36, 0, 218, 0, 0, 0, 145, 0, 0, 0, 170, 0, 113, 0, 255, 0, 56, 0, 170, 0, > 141, 0, 198, 0, 56, 0, 170, 0, 113, 0, 226, 0, 28, 0, 170, 0, 113, 0, 198, > 0, 85, 0, }; > > so it's an 8X12 matrix of values between 0 and 255 > > > is there a simple way in pure data that i can create such an animal? > > > > > *Patrick Pagano B.S, M.F.A* > Audio and Projection Design Faculty > Digital Worlds Institute > University of Florida, USA > (352)294-2020 > > _______________________________________________ > [email protected] mailing list > UNSUBSCRIBE and account-management -> > http://lists.puredata.info/listinfo/pd-list > >
#N canvas 152 75 779 262 10; #X obj 402 -336 outlet bangs; #X obj 402 -518 inlet msg; #X obj 481 -518 inlet m; #X obj 597 -518 inlet k; #X obj 511 -378 outlet end_of_bar; #N canvas 1 75 450 300 memories_and_counts 0; #X obj 186 146 <= 1; #X obj 186 168 sel 1; #X obj 146 79 -; #X obj 71 146 f; #X obj 128 146 f; #X obj 323 147 list; #X obj 258 147 list; #X obj 89 49 r \$0-m; #X obj 146 49 r \$0-k_init; #X obj 186 102 r \$0-k; #X obj 283 116 r \$0-mv; #X obj 348 116 r \$0-kv; #X obj 323 190 s \$0-kv1; #X obj 258 190 s \$0-mv1; #X obj 186 190 s \$0-stop; #X obj 128 190 s \$0-k1; #X obj 71 190 s \$0-m1; #X obj 19 84 r \$0-pass; #X connect 0 0 1 0; #X connect 1 0 14 0; #X connect 2 0 4 1; #X connect 3 0 16 0; #X connect 4 0 15 0; #X connect 5 0 12 0; #X connect 6 0 13 0; #X connect 7 0 2 1; #X connect 7 0 3 1; #X connect 8 0 2 0; #X connect 9 0 4 1; #X connect 9 0 0 0; #X connect 10 0 6 1; #X connect 11 0 5 1; #X connect 17 0 3 0; #X connect 17 0 4 0; #X connect 17 0 6 0; #X connect 17 0 5 0; #X restore 481 -471 pd memories_and_counts; #N canvas 1 75 469 308 looping_decomposition 0; #X obj 148 -3325 until; #X obj 180 -3136 list append; #X obj 148 -3302 t b b; #X obj 148 -3254 expr if ($f2 > $f3 \, 0 \, 1); #X obj 180 -3158 list; #X obj 270 -3136 list; #X obj 308 -3136 list; #X obj 148 -3210 t b b; #X obj 194 -3210 t b b; #X obj -49 -3158 expr $f2-$f3 \; $f3; #X obj 73 -3158 expr $f3-$f2 \; $f2; #X obj 148 -3232 sel 0 1; #X obj 192 -3302 s \$0-pass; #X obj 148 -3367 r \$0-go; #X obj 180 -3346 r \$0-stop; #X obj 234 -3275 r \$0-m1; #X obj 320 -3275 r \$0-k1; #X obj -5 -3211 r \$0-m1; #X obj 63 -3210 r \$0-k1; #X obj 16 -3112 s \$0-k; #X obj 76 -3112 s \$0-m; #X obj 295 -3200 r \$0-mv1; #X obj 333 -3176 r \$0-kv1; #X obj 270 -3110 s \$0-kv; #X obj 180 -3111 s \$0-mv; #X connect 0 0 2 0; #X connect 1 0 24 0; #X connect 2 0 3 0; #X connect 2 1 12 0; #X connect 3 0 11 0; #X connect 4 0 1 0; #X connect 5 0 23 0; #X connect 6 0 23 0; #X connect 7 0 9 0; #X connect 7 1 5 0; #X connect 7 1 4 0; #X connect 8 0 10 0; #X connect 8 1 6 0; #X connect 8 1 4 0; #X connect 9 0 19 0; #X connect 9 1 20 0; #X connect 10 0 19 0; #X connect 10 1 20 0; #X connect 11 0 7 0; #X connect 11 1 8 0; #X connect 13 0 0 0; #X connect 14 0 0 1; #X connect 15 0 3 1; #X connect 16 0 3 2; #X connect 17 0 9 1; #X connect 17 0 10 1; #X connect 18 0 9 2; #X connect 18 0 10 2; #X connect 21 0 4 1; #X connect 21 0 5 1; #X connect 22 0 1 1; #X connect 22 0 6 1; #X restore 481 -447 pd looping_decomposition; #N canvas 1 75 450 300 final_construct 0; #X obj 203 47 f; #X obj 65 86 f; #X obj 203 208 list append; #X obj 203 69 until; #X obj 203 101 f 0; #X obj 232 101 + 1; #X obj 203 167 *; #X msg 293 61 0; #X obj 65 108 sel 1; #X obj 65 207 list append; #X obj 83 154 +; #X obj 65 184 f; #X obj 313 117 list length; #X obj 277 186 list; #X obj 139 185 list; #X obj 65 -2 t b b b b b b b b b b b b b b b b; #X obj 65 -26 r \$0-stop; #X obj 221 26 r \$0-m; #X obj 83 64 r \$0-k; #X obj 302 83 r \$0-mv; #X obj 148 123 r \$0-kv; #X obj 203 231 s \$0-euclide; #X obj 302 40 s \$0-euclide; #X msg 302 20 const 0; #X connect 0 0 3 0; #X connect 1 0 8 0; #X connect 2 0 21 0; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 4 0 6 0; #X connect 5 0 4 1; #X connect 6 0 2 0; #X connect 6 0 10 0; #X connect 7 0 4 1; #X connect 8 0 11 0; #X connect 9 0 21 0; #X connect 10 0 11 1; #X connect 11 0 9 0; #X connect 12 0 6 1; #X connect 12 0 10 1; #X connect 13 0 2 1; #X connect 14 0 9 1; #X connect 15 0 1 0; #X connect 15 5 14 0; #X connect 15 9 0 0; #X connect 15 14 13 0; #X connect 15 15 23 0; #X connect 15 15 7 0; #X connect 16 0 15 0; #X connect 17 0 0 1; #X connect 18 0 1 1; #X connect 19 0 12 0; #X connect 19 0 13 1; #X connect 20 0 14 1; #X connect 23 0 22 0; #X restore 481 -423 pd final_construct; #N canvas 1 75 459 462 initialization 0; #X obj 165 278 t b l b; #X msg 268 302 1; #X msg 211 302 0; #X obj 188 346 unpack; #X obj 165 413 s \$0-go; #X obj 268 325 s \$0-mv; #X obj 211 325 s \$0-kv; #X obj 188 368 swap; #X obj 225 368 s \$0-m; #X obj 188 391 s \$0-k_init; #X obj 107 17 inlet m; #X obj 275 21 inlet k; #X obj 165 171 pack; #X obj 165 42 loadbang; #X obj 165 84 f \$1; #X obj 239 84 f \$2; #X obj 204 236 <; #X obj 165 257 spigot; #X obj 165 192 t l l; #X obj 197 213 unpack; #X obj 275 111 t b f; #X obj 165 123 clip 1 128; #X obj 239 151 clip 2 128; #X obj 165 64 t b b b b b; #X connect 0 0 4 0; #X connect 0 1 3 0; #X connect 0 2 1 0; #X connect 0 2 2 0; #X connect 1 0 5 0; #X connect 2 0 6 0; #X connect 3 0 7 0; #X connect 3 1 7 1; #X connect 7 0 9 0; #X connect 7 1 8 0; #X connect 10 0 21 0; #X connect 11 0 20 0; #X connect 12 0 18 0; #X connect 13 0 23 0; #X connect 14 0 21 0; #X connect 15 0 22 0; #X connect 16 0 17 1; #X connect 17 0 0 0; #X connect 18 0 17 0; #X connect 18 1 19 0; #X connect 19 0 16 0; #X connect 19 1 16 1; #X connect 20 0 12 0; #X connect 20 1 22 0; #X connect 21 0 12 0; #X connect 22 0 12 1; #X connect 23 0 14 0; #X connect 23 4 15 0; #X restore 481 -495 pd initialization; #X text -60 -479 arg 1 : number of beats in the rhythm (defaults to 1); #X text -60 -463 arg 2 : total length of the rhythm (defaults to 2) ; #X text -61 -534 Euclidean rhythm generator \, resulting in beats in the rhythms to be as equidistant as possible. Used to be triggered by isochronous bangs.; #X text -61 -434 inlet 1 : "bang" scans the generated table and outputs a bang on positive value. "reset" message forces the internal counter to 0; #X text -61 -391 inlet 2 : int \, number of beats in the rhythm; #X text -61 -373 inlet 3 : int \, total length of the rhythm; #X obj 456 -357 outlet gain; #N canvas 1 75 490 372 table_scanner 0; #X obj 39 168 %; #X obj 39 120 f 0; #X obj 72 120 + 1; #X msg 93 88 0; #X obj 39 257 sel 1; #X obj 39 300 outlet bangs; #X obj 57 146 r \$0-k_init; #X obj 39 235 tabread \$0-euclide; #X obj 39 38 route bang reset; #X obj 39 15 inlet msg; #X obj 312 225 sel; #X obj 330 199 - 1; #X obj 312 247 outlet end_of_bar; #X obj 112 62 r \$0-go; #X obj 39 202 t f f; #X obj 139 301 outlet gain; #X obj 139 279 expr if ($f2 == 0 \, 1 \, 0.5); #X obj 39 279 t b b; #X connect 0 0 10 0; #X connect 0 0 14 0; #X connect 1 0 2 0; #X connect 1 0 0 0; #X connect 2 0 1 1; #X connect 3 0 1 1; #X connect 4 0 17 0; #X connect 6 0 0 1; #X connect 6 0 11 0; #X connect 7 0 4 0; #X connect 8 0 1 0; #X connect 8 1 3 0; #X connect 9 0 8 0; #X connect 10 0 12 0; #X connect 11 0 10 1; #X connect 13 0 3 0; #X connect 14 0 7 0; #X connect 14 1 16 1; #X connect 16 0 15 0; #X connect 17 0 5 0; #X connect 17 1 16 0; #X restore 402 -399 pd table_scanner; #X obj 25 -335 table \$0-euclide 128; #X connect 1 0 16 0; #X connect 2 0 8 0; #X connect 3 0 8 1; #X connect 16 0 0 0; #X connect 16 1 15 0; #X connect 16 2 4 0; #X coords 0 26200 100 26100 0 0 0;
#N canvas 203 108 854 400 10; #X obj 239 49 hsl 128 15 1 64 0 1 empty empty empty -2 -8 0 10 -262144 -1 -1 1400 0; #X obj 236 69 int; #X floatatom 236 91 5 0 0 0 - - -; #X obj 30 131 noise~; #X obj 30 153 *~ 300; #X obj 30 175 +~ 800; #X obj 30 197 osc~; #X obj 30 236 *~; #X obj 79 219 vline~; #X obj 30 341 dac~; #X obj 189 164 euclidean 7 16; #X obj 287 100 hsl 128 15 2 64 0 1 empty empty empty -2 -8 0 10 -262144 -1 -1 2900 0; #X obj 284 120 int; #X floatatom 284 142 5 0 0 0 - - -; #X msg 79 198 0 \, 0.3 2 \, 0 8 2; #X obj 29 313 *~ 1; #X obj 648 37 hsl 128 15 1 64 0 1 empty empty empty -2 -8 0 10 -262144 -1 -1 1800 0; #X obj 645 57 int; #X floatatom 645 79 5 0 0 0 - - -; #X obj 439 119 noise~; #X obj 439 141 *~ 300; #X obj 439 185 osc~; #X obj 439 224 *~; #X obj 488 207 vline~; #X obj 439 329 dac~; #X obj 696 88 hsl 128 15 2 64 0 1 empty empty empty -2 -8 0 10 -262144 -1 -1 3000 0; #X obj 693 108 int; #X floatatom 693 130 5 0 0 0 - - -; #X msg 488 186 0 \, 0.3 2 \, 0 8 2; #X obj 438 301 *~ 1; #X obj 439 163 +~ 1300; #X obj 598 152 euclidean 9 16; #X obj 30 20 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1 ; #X obj 30 40 metro 125; #X obj 30 62 s met; #X obj 189 137 r met; #X obj 598 125 r met; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 2 0 10 1; #X connect 3 0 4 0; #X connect 4 0 5 0; #X connect 5 0 6 0; #X connect 6 0 7 0; #X connect 7 0 15 0; #X connect 8 0 7 1; #X connect 10 0 14 0; #X connect 10 1 15 1; #X connect 11 0 12 0; #X connect 12 0 13 0; #X connect 13 0 10 2; #X connect 14 0 8 0; #X connect 15 0 9 0; #X connect 15 0 9 1; #X connect 16 0 17 0; #X connect 17 0 18 0; #X connect 18 0 31 1; #X connect 19 0 20 0; #X connect 20 0 30 0; #X connect 21 0 22 0; #X connect 22 0 29 0; #X connect 23 0 22 1; #X connect 25 0 26 0; #X connect 26 0 27 0; #X connect 27 0 31 2; #X connect 28 0 23 0; #X connect 29 0 24 0; #X connect 29 0 24 1; #X connect 30 0 21 0; #X connect 31 0 28 0; #X connect 31 1 29 1; #X connect 32 0 33 0; #X connect 33 0 34 0; #X connect 35 0 10 0; #X connect 36 0 31 0;
_______________________________________________ [email protected] mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
