pianorollseq.pd 36.2 KB
Newer Older
Roman Haefeli's avatar
Roman Haefeli committed
1
2
3
4
5
6
7
8
9
10
11
#N struct 1003.vertgrid float x float y float w float h;
#N struct 1003.horizgrid float x float y float w float h float c;
#N struct 1003.vertline float x float y float h float c float n float
nvis;
#N struct 1003.gid.button float x float y float clr float hl float
gid;
#N struct 1003.vel float x float y float value;
#N struct 1003.dur float x float y float value;
#N struct 1003.note float x float y float w float h float id float
gid float vel float c float vis;
#N canvas 0 99 1087 839 10;
12
#N canvas 810 99 1117 771 testfeld 1;
Roman Haefeli's avatar
Roman Haefeli committed
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
#X scalar 1003.vertgrid 90 60 14 671 \;;
#X scalar 1003.vertgrid 105 60 14 671 \;;
#X scalar 1003.vertgrid 120 60 14 671 \;;
#X scalar 1003.vertgrid 135 60 14 671 \;;
#X scalar 1003.vertgrid 150 60 14 671 \;;
#X scalar 1003.vertgrid 165 60 14 671 \;;
#X scalar 1003.vertgrid 180 60 14 671 \;;
#X scalar 1003.vertgrid 195 60 14 671 \;;
#X scalar 1003.vertgrid 210 60 14 671 \;;
#X scalar 1003.vertgrid 225 60 14 671 \;;
#X scalar 1003.vertgrid 240 60 14 671 \;;
#X scalar 1003.vertgrid 255 60 14 671 \;;
#X scalar 1003.vertgrid 270 60 14 671 \;;
#X scalar 1003.vertgrid 285 60 14 671 \;;
#X scalar 1003.vertgrid 300 60 14 671 \;;
#X scalar 1003.vertgrid 315 60 14 671 \;;
#X scalar 1003.vertgrid 330 60 14 671 \;;
#X scalar 1003.vertgrid 345 60 14 671 \;;
#X scalar 1003.vertgrid 360 60 14 671 \;;
#X scalar 1003.vertgrid 375 60 14 671 \;;
#X scalar 1003.vertgrid 390 60 14 671 \;;
#X scalar 1003.vertgrid 405 60 14 671 \;;
#X scalar 1003.vertgrid 420 60 14 671 \;;
#X scalar 1003.vertgrid 435 60 14 671 \;;
#X scalar 1003.vertgrid 450 60 14 671 \;;
#X scalar 1003.vertgrid 465 60 14 671 \;;
#X scalar 1003.vertgrid 480 60 14 671 \;;
#X scalar 1003.vertgrid 495 60 14 671 \;;
#X scalar 1003.vertgrid 510 60 14 671 \;;
#X scalar 1003.vertgrid 525 60 14 671 \;;
#X scalar 1003.vertgrid 540 60 14 671 \;;
#X scalar 1003.vertgrid 555 60 14 671 \;;
#X scalar 1003.vertgrid 570 60 14 671 \;;
#X scalar 1003.vertgrid 585 60 14 671 \;;
#X scalar 1003.vertgrid 600 60 14 671 \;;
#X scalar 1003.vertgrid 615 60 14 671 \;;
#X scalar 1003.vertgrid 630 60 14 671 \;;
#X scalar 1003.vertgrid 645 60 14 671 \;;
#X scalar 1003.vertgrid 660 60 14 671 \;;
#X scalar 1003.vertgrid 675 60 14 671 \;;
#X scalar 1003.vertgrid 690 60 14 671 \;;
#X scalar 1003.vertgrid 705 60 14 671 \;;
#X scalar 1003.vertgrid 720 60 14 671 \;;
#X scalar 1003.vertgrid 735 60 14 671 \;;
#X scalar 1003.vertgrid 750 60 14 671 \;;
#X scalar 1003.vertgrid 765 60 14 671 \;;
#X scalar 1003.vertgrid 780 60 14 671 \;;
#X scalar 1003.vertgrid 795 60 14 671 \;;
#X scalar 1003.vertgrid 810 60 14 671 \;;
#X scalar 1003.vertgrid 825 60 14 671 \;;
#X scalar 1003.vertgrid 840 60 14 671 \;;
#X scalar 1003.vertgrid 855 60 14 671 \;;
#X scalar 1003.vertgrid 870 60 14 671 \;;
#X scalar 1003.vertgrid 885 60 14 671 \;;
#X scalar 1003.vertgrid 900 60 14 671 \;;
#X scalar 1003.vertgrid 915 60 14 671 \;;
#X scalar 1003.vertgrid 930 60 14 671 \;;
#X scalar 1003.vertgrid 945 60 14 671 \;;
#X scalar 1003.vertgrid 960 60 14 671 \;;
#X scalar 1003.vertgrid 975 60 14 671 \;;
#X scalar 1003.vertgrid 990 60 14 671 \;;
#X scalar 1003.vertgrid 1005 60 14 671 \;;
#X scalar 1003.vertgrid 1020 60 14 671 \;;
#X scalar 1003.vertgrid 1035 60 14 671 \;;
#X scalar 1003.horizgrid 90 60 960 13 887 \;;
#X scalar 1003.horizgrid 90 74 960 13 777 \;;
#X scalar 1003.horizgrid 90 88 960 13 887 \;;
#X scalar 1003.horizgrid 90 102 960 13 777 \;;
#X scalar 1003.horizgrid 90 116 960 13 887 \;;
#X scalar 1003.horizgrid 90 130 960 13 777 \;;
#X scalar 1003.horizgrid 90 144 960 13 887 \;;
#X scalar 1003.horizgrid 90 158 960 13 887 \;;
#X scalar 1003.horizgrid 90 172 960 13 777 \;;
#X scalar 1003.horizgrid 90 186 960 13 887 \;;
#X scalar 1003.horizgrid 90 200 960 13 777 \;;
#X scalar 1003.horizgrid 90 214 960 13 887 \;;
#X scalar 1003.horizgrid 90 228 960 13 887 \;;
#X scalar 1003.horizgrid 90 242 960 13 777 \;;
#X scalar 1003.horizgrid 90 256 960 13 887 \;;
#X scalar 1003.horizgrid 90 270 960 13 777 \;;
#X scalar 1003.horizgrid 90 284 960 13 887 \;;
#X scalar 1003.horizgrid 90 298 960 13 777 \;;
#X scalar 1003.horizgrid 90 312 960 13 887 \;;
#X scalar 1003.horizgrid 90 326 960 13 887 \;;
#X scalar 1003.horizgrid 90 340 960 13 777 \;;
#X scalar 1003.horizgrid 90 354 960 13 887 \;;
#X scalar 1003.horizgrid 90 368 960 13 777 \;;
#X scalar 1003.horizgrid 90 382 960 13 887 \;;
#X scalar 1003.horizgrid 90 396 960 13 887 \;;
#X scalar 1003.horizgrid 90 410 960 13 777 \;;
#X scalar 1003.horizgrid 90 424 960 13 887 \;;
#X scalar 1003.horizgrid 90 438 960 13 777 \;;
#X scalar 1003.horizgrid 90 452 960 13 887 \;;
#X scalar 1003.horizgrid 90 466 960 13 777 \;;
#X scalar 1003.horizgrid 90 480 960 13 887 \;;
#X scalar 1003.horizgrid 90 494 960 13 887 \;;
#X scalar 1003.horizgrid 90 508 960 13 777 \;;
#X scalar 1003.horizgrid 90 522 960 13 887 \;;
#X scalar 1003.horizgrid 90 536 960 13 777 \;;
#X scalar 1003.horizgrid 90 550 960 13 887 \;;
#X scalar 1003.horizgrid 90 564 960 13 887 \;;
#X scalar 1003.horizgrid 90 578 960 13 777 \;;
#X scalar 1003.horizgrid 90 592 960 13 887 \;;
#X scalar 1003.horizgrid 90 606 960 13 777 \;;
#X scalar 1003.horizgrid 90 620 960 13 887 \;;
#X scalar 1003.horizgrid 90 634 960 13 777 \;;
#X scalar 1003.horizgrid 90 648 960 13 887 \;;
#X scalar 1003.horizgrid 90 662 960 13 887 \;;
#X scalar 1003.horizgrid 90 676 960 13 777 \;;
#X scalar 1003.horizgrid 90 690 960 13 887 \;;
#X scalar 1003.horizgrid 90 704 960 13 777 \;;
#X scalar 1003.horizgrid 90 718 960 13 887 \;;
#X scalar 1003.vertline 90 60 672 0 1 1 \;;
#X scalar 1003.vertline 105 60 672 888 1 0 \;;
#X scalar 1003.vertline 120 60 672 888 1 0 \;;
#X scalar 1003.vertline 135 60 672 888 1 0 \;;
#X scalar 1003.vertline 150 60 672 666 1 0 \;;
#X scalar 1003.vertline 165 60 672 888 1 0 \;;
#X scalar 1003.vertline 180 60 672 888 1 0 \;;
#X scalar 1003.vertline 195 60 672 888 1 0 \;;
#X scalar 1003.vertline 210 60 672 666 1 0 \;;
#X scalar 1003.vertline 225 60 672 888 1 0 \;;
#X scalar 1003.vertline 240 60 672 888 1 0 \;;
#X scalar 1003.vertline 255 60 672 888 1 0 \;;
#X scalar 1003.vertline 270 60 672 666 1 0 \;;
#X scalar 1003.vertline 285 60 672 888 1 0 \;;
#X scalar 1003.vertline 300 60 672 888 1 0 \;;
#X scalar 1003.vertline 315 60 672 888 1 0 \;;
#X scalar 1003.vertline 330 60 672 0 2 1 \;;
#X scalar 1003.vertline 345 60 672 888 2 0 \;;
#X scalar 1003.vertline 360 60 672 888 2 0 \;;
#X scalar 1003.vertline 375 60 672 888 2 0 \;;
#X scalar 1003.vertline 390 60 672 666 2 0 \;;
#X scalar 1003.vertline 405 60 672 888 2 0 \;;
#X scalar 1003.vertline 420 60 672 888 2 0 \;;
#X scalar 1003.vertline 435 60 672 888 2 0 \;;
#X scalar 1003.vertline 450 60 672 666 2 0 \;;
#X scalar 1003.vertline 465 60 672 888 2 0 \;;
#X scalar 1003.vertline 480 60 672 888 2 0 \;;
#X scalar 1003.vertline 495 60 672 888 2 0 \;;
#X scalar 1003.vertline 510 60 672 666 2 0 \;;
#X scalar 1003.vertline 525 60 672 888 2 0 \;;
#X scalar 1003.vertline 540 60 672 888 2 0 \;;
#X scalar 1003.vertline 555 60 672 888 2 0 \;;
#X scalar 1003.vertline 570 60 672 0 3 1 \;;
#X scalar 1003.vertline 585 60 672 888 3 0 \;;
#X scalar 1003.vertline 600 60 672 888 3 0 \;;
#X scalar 1003.vertline 615 60 672 888 3 0 \;;
#X scalar 1003.vertline 630 60 672 666 3 0 \;;
#X scalar 1003.vertline 645 60 672 888 3 0 \;;
#X scalar 1003.vertline 660 60 672 888 3 0 \;;
#X scalar 1003.vertline 675 60 672 888 3 0 \;;
#X scalar 1003.vertline 690 60 672 666 3 0 \;;
#X scalar 1003.vertline 705 60 672 888 3 0 \;;
#X scalar 1003.vertline 720 60 672 888 3 0 \;;
#X scalar 1003.vertline 735 60 672 888 3 0 \;;
#X scalar 1003.vertline 750 60 672 666 3 0 \;;
#X scalar 1003.vertline 765 60 672 888 3 0 \;;
#X scalar 1003.vertline 780 60 672 888 3 0 \;;
#X scalar 1003.vertline 795 60 672 888 3 0 \;;
#X scalar 1003.vertline 810 60 672 0 4 1 \;;
#X scalar 1003.vertline 825 60 672 888 4 0 \;;
#X scalar 1003.vertline 840 60 672 888 4 0 \;;
#X scalar 1003.vertline 855 60 672 888 4 0 \;;
#X scalar 1003.vertline 870 60 672 666 4 0 \;;
#X scalar 1003.vertline 885 60 672 888 4 0 \;;
#X scalar 1003.vertline 900 60 672 888 4 0 \;;
#X scalar 1003.vertline 915 60 672 888 4 0 \;;
#X scalar 1003.vertline 930 60 672 666 4 0 \;;
#X scalar 1003.vertline 945 60 672 888 4 0 \;;
#X scalar 1003.vertline 960 60 672 888 4 0 \;;
#X scalar 1003.vertline 975 60 672 888 4 0 \;;
#X scalar 1003.vertline 990 60 672 666 4 0 \;;
#X scalar 1003.vertline 1005 60 672 888 4 0 \;;
#X scalar 1003.vertline 1020 60 672 888 4 0 \;;
#X scalar 1003.vertline 1035 60 672 888 4 0 \;;
#X scalar 1003.vertline 1050 60 672 0 5 0 \;;
#X scalar 1003.gid.button 290 20 800 1 0 \;;
#X scalar 1003.gid.button 320 20 880 1 1 \;;
#X scalar 1003.gid.button 350 20 80 1 2 \;;
#X scalar 1003.gid.button 380 20 88 1 3 \;;
#X scalar 1003.gid.button 410 20 8 1 4 \;;
#X scalar 1003.gid.button 440 20 808 3 5 \;;
#X scalar 1003.vel 90 20 64 \;;
#X scalar 1003.dur 190 20 5 \;;
#X scalar 1003.note 195 480 75 13 0 5 64 404 0 \;;
Roman Haefeli's avatar
Roman Haefeli committed
199
#X restore 39 55 pd testfeld;
200
201
#X msg 644 365 clear;
#X obj 581 524 s pd-testfeld;
202
#X obj 67 773 s pd-testfeld;
Roman Haefeli's avatar
Roman Haefeli committed
203
204
205
#X obj 67 373 del 0;
#X obj 67 400 f;
#X msg 110 376 1;
206
#X msg 252 359 0;
Roman Haefeli's avatar
Roman Haefeli committed
207
208
#X obj 67 426 sel 1;
#N canvas 0 99 483 432 detect_double_click 0;
209
210
#X obj 91 101 -;
#X obj 90 76 t a a;
Roman Haefeli's avatar
Roman Haefeli committed
211
212
213
#X obj 19 23 inlet;
#X text 109 21 this detects two clicks on the same scalar within a
certain period.;
214
215
216
217
#X obj 19 75 t b b;
#X obj 19 99 del 300;
#X msg 19 122 0;
#X msg 52 123 1;
Roman Haefeli's avatar
Roman Haefeli committed
218
#X obj 19 48 t b a;
219
220
221
222
223
224
225
226
227
228
229
230
231
232
#X obj 91 166 spigot 0;
#X obj 91 203 outlet;
#X obj 91 126 sel 0;
#X connect 0 0 11 0;
#X connect 1 0 0 1;
#X connect 1 1 0 0;
#X connect 2 0 8 0;
#X connect 4 0 5 0;
#X connect 4 1 7 0;
#X connect 5 0 6 0;
#X connect 6 0 9 1;
#X connect 7 0 9 1;
#X connect 8 0 4 0;
#X connect 8 1 1 0;
Roman Haefeli's avatar
Roman Haefeli committed
233
#X connect 9 0 10 0;
234
#X connect 11 0 9 0;
235
#X restore 279 418 pd detect_double_click;
236
237
#X obj 252 277 unpack s p f;
#X obj 252 300 sel click;
238
#X msg 279 464 0;
239
240
#X obj 252 322 t b b;
#X obj 279 346 pointer;
241
242
243
244
#X obj 437 15 loadbang;
#X obj 437 38 \$0;
#X obj 581 298 r \$0.init;
#X obj 416 14 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
245
-1;
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
#N canvas 133 127 401 394 create_horizgrid 0;
#X obj 16 86 t a b;
#X obj 16 109 until;
#X obj 16 132 f;
#X msg 54 110 0;
#X obj 67 150 + 1;
#X obj 16 62 f;
#X obj 49 62 r \$0.pitchrange;
#X text 229 320 x y w h c;
#X obj 16 271 pack f f f f f;
#N canvas 0 99 387 189 x 0;
#X obj 18 12 inlet;
#X obj 18 97 +;
#X obj 33 70 r \$0.canvasleftmargin;
#X msg 18 46 0;
#X obj 18 120 outlet;
#X connect 0 0 3 0;
#X connect 1 0 4 0;
#X connect 2 0 1 1;
Roman Haefeli's avatar
Roman Haefeli committed
265
#X connect 3 0 1 0;
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
#X restore 16 233 pd x;
#N canvas 0 99 405 280 y 0;
#X obj 42 123 * 14;
#X obj 42 199 +;
#X obj 57 173 r \$0.canvastopmargin;
#X obj 63 96 r \$0.stepvisheight;
#X obj 42 35 inlet;
#X obj 42 239 outlet;
#X connect 0 0 1 0;
#X connect 1 0 5 0;
#X connect 2 0 1 1;
#X connect 3 0 0 1;
#X connect 4 0 0 0;
#X restore 55 234 pd y;
#N canvas 0 99 418 249 w 0;
#X obj 16 17 inlet;
#X obj 16 194 outlet;
#X obj 16 103 f;
#X obj 31 77 r \$0.stepcount;
#X obj 31 127 r \$0.stepviswidth;
#X obj 16 155 *;
#X obj 16 45 b;
#X connect 0 0 6 0;
#X connect 2 0 5 0;
#X connect 3 0 2 1;
#X connect 4 0 5 1;
#X connect 5 0 1 0;
#X connect 6 0 2 0;
#X restore 92 234 pd w;
#N canvas 0 99 395 171 h 0;
#X obj 23 14 inlet;
#X obj 23 37 b;
298
299
#X obj 23 110 f;
#X obj 23 133 outlet;
300
#X obj 38 65 r \$0.stepvisheight;
301
#X obj 38 88 - 1;
302
303
304
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
305
306
#X connect 4 0 5 0;
#X connect 5 0 2 1;
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
#X restore 135 235 pd h;
#X obj 16 156 t a a;
#X obj 16 185 t a a a a a;
#N canvas 570 378 422 271 c 0;
#X obj 20 56 mod 12;
#X obj 20 80 sel 0 2 4 5 7 9 11;
#X obj 125 102 b;
#X obj 20 130 f 887;
#X obj 125 177 f 777;
#X obj 20 32 + 5;
#X obj 64 129 r \$0.stepkeycolor1;
#X obj 132 152 r \$0.stepkeycolor2;
#X obj 20 211 t a;
#X obj 20 7 inlet;
#X obj 20 238 outlet;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 1 1 3 0;
#X connect 1 2 3 0;
#X connect 1 3 3 0;
#X connect 1 4 3 0;
#X connect 1 5 3 0;
#X connect 1 6 3 0;
#X connect 1 7 2 0;
#X connect 2 0 4 0;
#X connect 3 0 8 0;
#X connect 4 0 8 0;
#X connect 5 0 0 0;
#X connect 6 0 3 1;
#X connect 7 0 4 1;
#X connect 8 0 10 0;
#X connect 9 0 5 0;
#X restore 171 234 pd c;
#X obj 16 294 list prepend \$0;
#X obj 16 10 inlet;
#X obj 16 35 b;
#X obj 16 343 outlet;
#X msg 16 320 scalar \$1.horizgrid \$2 \$3 \$4 \$5 \$6;
#X connect 0 0 1 0;
#X connect 0 1 3 0;
#X connect 1 0 2 0;
#X connect 2 0 13 0;
#X connect 3 0 2 1;
#X connect 4 0 2 1;
#X connect 5 0 0 0;
#X connect 6 0 5 1;
#X connect 8 0 16 0;
#X connect 9 0 8 0;
#X connect 10 0 8 1;
#X connect 11 0 8 2;
#X connect 12 0 8 3;
#X connect 13 0 14 0;
#X connect 13 1 4 0;
#X connect 14 0 9 0;
#X connect 14 1 10 0;
#X connect 14 2 11 0;
#X connect 14 3 12 0;
#X connect 14 4 15 0;
#X connect 15 0 8 4;
#X connect 16 0 20 0;
#X connect 17 0 18 0;
#X connect 18 0 5 0;
#X connect 20 0 19 0;
370
#X restore 612 418 pd create_horizgrid;
371
372
373
374
#N canvas 75 102 410 167 horizgrid-template 0;
#X obj 19 18 filledpolygon c c 1 0 0 0 h w h w 0;
#X obj 20 44 struct \$0.horizgrid float x float y float w float h float
c;
Roman Haefeli's avatar
Roman Haefeli committed
375
376
#X obj 20 73 s \$0.horizgrid.send;
#X connect 1 0 2 0;
377
#X restore 756 390 pd horizgrid-template;
Roman Haefeli's avatar
Roman Haefeli committed
378
#N canvas 60 99 380 157 vertgrid-template 0;
379
380
#X obj 19 18 filledpolygon 0 0 1 0 0 0 h w h w 0;
#X obj 19 42 struct \$0.vertgrid float x float y float w float h;
Roman Haefeli's avatar
Roman Haefeli committed
381
382
#X obj 19 66 s \$0.vertgrid.send;
#X connect 1 0 2 0;
383
#X restore 756 417 pd vertgrid-template;
Roman Haefeli's avatar
Roman Haefeli committed
384
#N canvas 133 127 401 394 create_vertgrid 0;
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
#X obj 16 86 t a b;
#X obj 16 109 until;
#X obj 16 132 f;
#X msg 54 110 0;
#X obj 67 150 + 1;
#X obj 16 62 f;
#N canvas 0 99 401 215 x 0;
#X obj 18 12 inlet;
#X obj 18 147 +;
#X obj 33 120 r \$0.canvasleftmargin;
#X obj 18 170 outlet;
#X obj 18 75 *;
#X obj 33 42 r \$0.stepviswidth;
#X connect 0 0 4 0;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 4 0 1 0;
#X connect 5 0 4 1;
#X restore 16 233 pd x;
#N canvas 0 99 405 280 y 0;
#X obj 42 199 +;
#X obj 57 173 r \$0.canvastopmargin;
#X obj 42 35 inlet;
#X obj 42 239 outlet;
#X msg 42 90 0;
#X connect 0 0 3 0;
#X connect 1 0 0 1;
#X connect 2 0 4 0;
#X connect 4 0 0 0;
#X restore 55 234 pd y;
#N canvas 0 99 418 249 w 0;
#X obj 16 17 inlet;
#X obj 16 194 outlet;
418
#X obj 31 90 r \$0.stepviswidth;
419
420
#X obj 16 45 b;
#X obj 16 155 f;
421
#X obj 31 113 - 1;
422
#X connect 0 0 3 0;
423
#X connect 2 0 5 0;
424
425
#X connect 3 0 4 0;
#X connect 4 0 1 0;
426
#X connect 5 0 4 1;
427
428
429
430
#X restore 92 234 pd w;
#N canvas 0 99 398 252 h 0;
#X obj 23 14 inlet;
#X obj 23 37 b;
431
#X obj 23 193 outlet;
432
433
434
435
#X obj 38 115 r \$0.stepvisheight;
#X obj 23 91 f;
#X obj 23 140 *;
#X obj 38 66 r \$0.pitchrange;
436
#X obj 23 163 - 1;
437
438
439
440
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 3 0 5 1;
#X connect 4 0 5 0;
441
#X connect 5 0 7 0;
442
#X connect 6 0 4 1;
443
#X connect 7 0 2 0;
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
#X restore 135 235 pd h;
#X obj 16 156 t a a;
#X obj 16 294 list prepend \$0;
#X obj 16 10 inlet;
#X obj 16 35 b;
#X obj 16 343 outlet;
#X obj 46 60 r \$0.stepcount;
#X text 229 320 x y w h;
#X obj 16 271 pack f f f f;
#X obj 16 185 t a a a a;
#X msg 16 320 scalar \$1.vertgrid \$2 \$3 \$4 \$5;
#X connect 0 0 1 0;
#X connect 0 1 3 0;
#X connect 1 0 2 0;
#X connect 2 0 10 0;
#X connect 3 0 2 1;
#X connect 4 0 2 1;
#X connect 5 0 0 0;
#X connect 6 0 17 0;
#X connect 7 0 17 1;
#X connect 8 0 17 2;
#X connect 9 0 17 3;
#X connect 10 0 18 0;
#X connect 10 1 4 0;
#X connect 11 0 19 0;
Roman Haefeli's avatar
Roman Haefeli committed
469
#X connect 12 0 13 0;
470
471
472
473
474
475
476
477
#X connect 13 0 5 0;
#X connect 15 0 5 1;
#X connect 17 0 11 0;
#X connect 18 0 6 0;
#X connect 18 1 7 0;
#X connect 18 2 8 0;
#X connect 18 3 9 0;
#X connect 19 0 14 0;
478
#X restore 628 390 pd create_vertgrid;
479
480
481
482
483
484
485
#X obj 67 152 r \$0.horizgrid.send;
#X obj 67 175 route click;
#X obj 67 198 get \$0.horizgrid y;
#X obj 112 243 route click;
#X obj 112 220 r \$0.vertgrid.send;
#X obj 67 291 pack f f;
#X obj 112 266 get \$0.vertgrid x;
Roman Haefeli's avatar
Roman Haefeli committed
486
487
488
489
490
491
492
#N canvas 107 99 450 300 vertline-template 0;
#X obj 18 20 drawpolygon c 1 0 0 0 h;
#X obj 19 79 s \$0.vertline.send;
#X obj 165 20 drawnumber -v nvis n -3 -15 c;
#X obj 19 42 struct \$0.vertline float x float y float h float c float
n float nvis;
#X connect 3 0 1 0;
493
#X restore 756 444 pd vertline-template;
494
#N canvas 43 99 400 432 create_vertline 0;
Roman Haefeli's avatar
Roman Haefeli committed
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
#X obj 16 116 t a b;
#X obj 16 139 until;
#X obj 16 162 f;
#X msg 54 140 0;
#X obj 67 180 + 1;
#X obj 16 62 f;
#N canvas 0 99 401 215 x 0;
#X obj 18 12 inlet;
#X obj 18 147 +;
#X obj 33 120 r \$0.canvasleftmargin;
#X obj 18 170 outlet;
#X obj 18 75 *;
#X obj 33 42 r \$0.stepviswidth;
#X connect 0 0 4 0;
#X connect 1 0 3 0;
#X connect 2 0 1 1;
#X connect 4 0 1 0;
#X connect 5 0 4 1;
#X restore 16 263 pd x;
#N canvas 0 99 405 280 y 0;
#X obj 42 199 +;
#X obj 57 173 r \$0.canvastopmargin;
#X obj 42 35 inlet;
#X obj 42 239 outlet;
#X msg 42 90 0;
#X connect 0 0 3 0;
#X connect 1 0 0 1;
#X connect 2 0 4 0;
#X connect 4 0 0 0;
#X restore 55 264 pd y;
#X obj 16 186 t a a;
#X obj 16 324 list prepend \$0;
#X obj 16 10 inlet;
#X obj 16 35 b;
#X obj 16 373 outlet;
#X obj 46 60 r \$0.stepcount;
#N canvas 0 99 398 252 h 0;
#X obj 23 14 inlet;
#X obj 23 37 b;
#X obj 23 163 outlet;
#X obj 38 115 r \$0.stepvisheight;
#X obj 23 91 f;
#X obj 23 140 *;
#X obj 38 66 r \$0.pitchrange;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 3 0 5 1;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 6 0 4 1;
#X restore 96 266 pd h;
#N canvas 0 99 500 410 c 0;
#X obj 16 17 inlet;
#X obj 16 326 outlet;
#X obj 87 53 r \$0.griddivision;
#X obj 103 80 r \$0.gridsubdivision;
#X obj 87 131 *;
#X obj 16 161 mod;
#X obj 16 198 sel 0;
#X obj 58 205 r \$0.gridsubdivision;
#X obj 43 232 mod;
#X obj 43 261 sel 0;
#X msg 70 288 888;
#X msg 16 289 0;
#X obj 103 103 t b a;
#X msg 43 288 666;
#X connect 0 0 5 0;
#X connect 2 0 4 0;
#X connect 3 0 12 0;
#X connect 4 0 5 1;
#X connect 5 0 6 0;
#X connect 6 0 11 0;
#X connect 6 1 8 0;
#X connect 7 0 8 1;
#X connect 8 0 9 0;
#X connect 9 0 13 0;
#X connect 9 1 10 0;
#X connect 10 0 1 0;
#X connect 11 0 1 0;
#X connect 12 0 4 0;
#X connect 12 1 4 1;
#X connect 13 0 1 0;
#X restore 133 267 pd c;
#X obj 16 89 + 1;
#X text 46 89 one more for end line;
#X obj 16 215 t a a a a a;
#N canvas 0 99 429 340 n 0;
#X obj 20 26 inlet;
#X obj 20 265 outlet;
#X obj 113 30 r \$0.griddivision;
#X obj 129 57 r \$0.gridsubdivision;
#X obj 113 108 *;
#X obj 129 80 t b a;
#X obj 20 161 div;
#X obj 20 109 t a a;
590
591
592
#X obj 109 197 mod;
#X obj 109 225 == 0;
#X obj 109 268 outlet;
Roman Haefeli's avatar
Roman Haefeli committed
593
#X obj 20 184 + 1;
594
595
596
#X obj 170 115 r \$0.stepcount;
#X obj 78 174 sel;
#X msg 78 200 0;
Roman Haefeli's avatar
Roman Haefeli committed
597
598
599
600
601
602
603
604
605
#X connect 0 0 7 0;
#X connect 2 0 4 0;
#X connect 3 0 5 0;
#X connect 4 0 6 1;
#X connect 4 0 8 1;
#X connect 5 0 4 0;
#X connect 5 1 4 1;
#X connect 6 0 11 0;
#X connect 7 0 6 0;
606
#X connect 7 1 13 0;
Roman Haefeli's avatar
Roman Haefeli committed
607
608
609
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 11 0 1 0;
610
611
612
613
#X connect 12 0 13 1;
#X connect 13 0 14 0;
#X connect 13 1 8 0;
#X connect 14 0 10 0;
Roman Haefeli's avatar
Roman Haefeli committed
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
#X restore 170 267 pd n nvis;
#X obj 16 301 pack f f f f f f;
#X text 249 349 x y h c n nvis;
#X msg 16 350 scalar \$1.vertline \$2 \$3 \$4 \$5 \$6 \$7;
#X connect 0 0 1 0;
#X connect 0 1 3 0;
#X connect 1 0 2 0;
#X connect 2 0 8 0;
#X connect 3 0 2 1;
#X connect 4 0 2 1;
#X connect 5 0 16 0;
#X connect 6 0 20 0;
#X connect 7 0 20 1;
#X connect 8 0 18 0;
#X connect 8 1 4 0;
#X connect 9 0 22 0;
#X connect 10 0 11 0;
#X connect 11 0 5 0;
#X connect 13 0 5 1;
#X connect 14 0 20 2;
#X connect 15 0 20 3;
#X connect 16 0 0 0;
#X connect 18 0 6 0;
#X connect 18 1 7 0;
#X connect 18 2 14 0;
#X connect 18 3 15 0;
#X connect 18 4 19 0;
#X connect 19 0 20 4;
#X connect 19 1 20 5;
#X connect 20 0 9 0;
#X connect 22 0 12 0;
645
#X restore 596 446 pd create_vertline;
646
647
648
#X obj 67 340 t b b a;
#X obj 67 453 list append;
#X msg 67 314 \$2 \$1;
649
#N canvas 79 99 782 466 note-template 0;
650
651
#X obj 121 264 max 0;
#X obj 121 287 min 127;
652
#X obj 51 166 route click change;
653
#X obj 121 312 t a a;
654
655
#X obj 32 141 t a a a;
#X obj 32 34 drawnumber -v vis vel 1 -14 0;
656
#X obj 32 429 s \$0.note.send;
657
658
659
660
661
662
663
664
665
666
667
668
#X obj 32 104 struct \$0.note float x float y float w float h float
id float gid float vel float c float vis;
#X obj 51 189 t p p, f 48;
#X obj 51 235 t a b, f 36;
#X obj 264 353 f;
#X obj 279 295 r \$0.stepvisheight;
#X obj 279 318 - 1;
#X obj 226 265 r \$0.stepviswidth;
#X obj 193 289 div;
#X obj 193 312 *;
#X obj 32 54 filledpolygon -v vis c 444 1 0 0 0 h w h w 0;
#X obj 193 335 max;
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
#N canvas 645 450 401 207 get.gid.clr 0;
#X obj 11 15 inlet;
#X obj 30 74 s \$0.gid2lr.get;
#X obj 30 98 r \$0.gid2lr.set;
#X obj 11 42 t b a b;
#X obj 11 131 list append;
#X obj 11 154 outlet;
#X connect 0 0 3 0;
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 3 1 1 0;
#X connect 3 2 4 1;
#X connect 4 0 5 0;
#X restore 51 335 pd get.gid.clr;
#N canvas 320 203 446 363 clr.* 0;
#X obj 28 62 t a a a;
#X obj 28 112 div 100;
#X obj 78 113 mod 100;
#X obj 78 136 div 10;
#X obj 128 112 mod 10;
#X obj 28 165 *;
#X obj 28 188 int;
#X obj 78 165 *;
#X obj 78 188 int;
#X obj 128 165 *;
#X obj 128 188 int;
#X obj 230 103 inlet;
#X obj 28 212 min 9;
#X obj 78 212 min 9;
#X obj 128 212 min 9;
#X obj 28 235 * 100;
#X obj 78 235 * 10;
#X obj 128 235 * 1;
#X obj 28 262 +;
#X obj 28 285 +;
#X obj 28 311 outlet;
#X obj 28 24 inlet;
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 4 0;
#X connect 1 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 6 0;
#X connect 6 0 12 0;
#X connect 7 0 8 0;
#X connect 8 0 13 0;
#X connect 9 0 10 0;
#X connect 10 0 14 0;
#X connect 11 0 9 1;
#X connect 11 0 7 1;
#X connect 11 0 5 1;
#X connect 12 0 15 0;
#X connect 13 0 16 0;
#X connect 14 0 17 0;
#X connect 15 0 18 0;
#X connect 16 0 18 1;
#X connect 17 0 19 1;
#X connect 18 0 19 0;
729
#X connect 19 0 20 0;
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
#X connect 21 0 0 0;
#X restore 51 369 pd clr.*;
#X obj 121 361 / 113;
#X obj 51 212 get \$0.note gid vel w, f 24;
#X obj 51 406 set \$0.note c vel w h, f 48;
#X connect 0 0 1 0;
#X connect 1 0 3 0;
#X connect 2 0 8 0;
#X connect 2 1 8 0;
#X connect 3 0 20 0;
#X connect 3 1 22 1;
#X connect 4 0 6 0;
#X connect 4 1 2 0;
#X connect 7 0 4 0;
#X connect 8 0 21 0;
#X connect 8 1 22 4;
#X connect 9 0 18 0;
#X connect 9 1 10 0;
#X connect 10 0 22 3;
#X connect 11 0 12 0;
#X connect 12 0 10 1;
#X connect 13 0 14 1;
#X connect 13 0 15 1;
#X connect 13 0 17 1;
#X connect 14 0 15 0;
#X connect 15 0 17 0;
#X connect 17 0 22 2;
#X connect 18 0 19 0;
#X connect 19 0 22 0;
#X connect 20 0 19 1;
#X connect 21 0 9 0;
#X connect 21 1 0 0;
#X connect 21 2 14 0;
#X restore 759 341 pd note-template;
764
765
#X obj 252 247 r \$0.note.send;
#X obj 279 372 get \$0.note id;
766
767
768
769
#X obj 279 533 set \$0.note vis;
#X obj 67 719 list prepend scalar \$0.note;
#X obj 67 742 list trim;
#X text 79 650 x y w h id gid vel c vis;
770
771
772
773
774
775
#N canvas 26 99 407 242 append.w 0;
#X obj 7 21 inlet;
#X obj 7 145 outlet;
#X obj 7 115 list append 30;
#X obj 88 90 *;
#X obj 103 61 r \$0.stepviswidth;
776
#X obj 88 20 r \$0.default.dur;
777
778
#X connect 0 0 2 0;
#X connect 2 0 1 0;
779
780
781
#X connect 3 0 2 1;
#X connect 4 0 3 1;
#X connect 5 0 3 0;
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
#X restore 67 493 pd append.w;
#N canvas 26 99 432 235 append.h 0;
#X obj 7 21 inlet;
#X obj 7 159 outlet;
#X obj 7 88 list append 0;
#X obj 82 28 r \$0.stepvisheight;
#X obj 82 51 - 1;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 3 0 4 0;
#X connect 4 0 2 1;
#X restore 67 515 pd append.h;
#N canvas 26 99 410 257 append.id 0;
#X obj 7 21 inlet;
#X obj 7 180 outlet;
#X obj 7 56 t a b;
#X obj 7 154 list append 0;
799
800
801
802
803
804
805
806
807
#X obj 82 84 array min \$0.active;
#X obj 82 107 sel 0;
#X obj 82 130 f;
#X msg 116 137 note buffer full!;
#X obj 116 161 print ERROR;
#X connect 0 0 2 0;
#X connect 2 0 3 0;
#X connect 2 1 4 0;
#X connect 3 0 1 0;
808
#X connect 4 0 5 0;
809
810
811
812
813
#X connect 4 1 6 1;
#X connect 5 0 6 0;
#X connect 5 1 7 0;
#X connect 6 0 3 1;
#X connect 7 0 8 0;
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
#X restore 67 538 pd append.id;
#X text 74 470 x y;
#N canvas 135 99 416 204 append.gid 0;
#X obj 7 21 inlet;
#X obj 7 137 outlet;
#X obj 7 104 list append 0;
#X obj 82 36 r \$0.default.gid;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 3 0 2 1;
#X restore 67 561 pd append.gid;
#N canvas 26 99 395 215 append.vel 0;
#X obj 20 21 inlet;
#X obj 20 162 outlet;
#X obj 20 81 list append 64;
#X obj 101 43 r \$0.default.vel;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 3 0 2 1;
#X restore 67 584 pd append.vel;
#N canvas 26 99 450 300 append.c 0;
#X obj 7 21 inlet;
#X obj 7 152 outlet;
#X obj 7 94 list append 400;
838
839
840
841
842
843
844
845
846
#X obj 143 19 r \$0.default.gid;
#X obj 264 22 r \$0.default.vel;
#N canvas 645 450 401 207 get.gid.clr 0;
#X obj 11 15 inlet;
#X obj 30 74 s \$0.gid2lr.get;
#X obj 30 98 r \$0.gid2lr.set;
#X obj 11 42 t b a b;
#X obj 11 131 list append;
#X obj 11 154 outlet;
847
#X connect 0 0 3 0;
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 3 1 1 0;
#X connect 3 2 4 1;
#X connect 4 0 5 0;
#X restore 143 53 pd get.gid.clr;
#N canvas 320 203 446 363 clr.* 0;
#X obj 28 62 t a a a;
#X obj 28 112 div 100;
#X obj 78 113 mod 100;
#X obj 78 136 div 10;
#X obj 128 112 mod 10;
#X obj 28 165 *;
#X obj 28 188 int;
#X obj 78 165 *;
#X obj 78 188 int;
#X obj 128 165 *;
#X obj 128 188 int;
#X obj 230 103 inlet;
#X obj 28 212 min 9;
#X obj 78 212 min 9;
#X obj 128 212 min 9;
#X obj 28 235 * 100;
#X obj 78 235 * 10;
#X obj 128 235 * 1;
#X obj 28 262 +;
#X obj 28 285 +;
#X obj 28 311 outlet;
#X obj 28 24 inlet;
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 4 0;
#X connect 1 0 5 0;
#X connect 2 0 3 0;
#X connect 3 0 7 0;
#X connect 4 0 9 0;
#X connect 5 0 6 0;
#X connect 6 0 12 0;
#X connect 7 0 8 0;
#X connect 8 0 13 0;
#X connect 9 0 10 0;
#X connect 10 0 14 0;
#X connect 11 0 9 1;
#X connect 11 0 7 1;
#X connect 11 0 5 1;
#X connect 12 0 15 0;
#X connect 13 0 16 0;
#X connect 14 0 17 0;
#X connect 15 0 18 0;
#X connect 16 0 18 1;
#X connect 17 0 19 1;
#X connect 18 0 19 0;
#X connect 19 0 20 0;
#X connect 21 0 0 0;
#X restore 143 131 pd clr.*;
#X obj 143 92 f;
#X obj 264 83 t b a;
#X obj 264 60 / 113;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 3 0 5 0;
#X connect 4 0 9 0;
#X connect 5 0 7 0;
#X connect 6 0 2 1;
#X connect 7 0 6 0;
#X connect 8 0 7 0;
#X connect 8 1 6 1;
#X connect 9 0 8 0;
916
917
918
919
920
921
922
923
#X restore 67 608 pd append.c;
#N canvas 26 99 414 215 append.vis 0;
#X obj 7 21 inlet;
#X obj 7 126 outlet;
#X obj 7 81 list append 1;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X restore 67 631 pd append.vis;
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
#X obj 835 38 array define \$0.step 1000;
#X obj 835 61 array define \$0.pitch 1000;
#X obj 835 107 array define \$0.velocity 1000;
#X obj 835 84 array define \$0.duration 1000;
#X obj 836 130 array define \$0.gid 1000;
#X obj 67 668 t a a;
#N canvas 0 99 588 480 add.note 0;
#X obj 19 11 inlet;
#X obj 19 57 unpack f f f f f f f f f, f 64;
#X obj 46 226 r \$0.canvasleftmargin;
#X obj 47 248 r \$0.stepviswidth;
#X obj 19 226 -;
#X obj 19 249 /;
#X obj 66 124 -;
#X obj 66 147 /;
#X obj 91 124 r \$0.canvastopmargin;
#X obj 91 147 r \$0.stepvisheight;
#X msg 66 171 83 \$1;
#X obj 66 194 -;
#X text 31 30 x y w h id gid vel c vis;
#X obj 141 88 r \$0.stepviswidth;
#X obj 114 88 /;
#X obj 19 304 pack f f f f f f f, f 64;
#X text 32 284 step . . pitch. . . duration . id . . . .gid . . . vel.
. .;
#X text 408 285 active;
#X msg 19 327 \$4 \$7 \$1 \$2 \$3 \$6 \$5;
#X obj 19 411 s \$0.active;
#X obj 106 411 s \$0.step;
#X obj 193 411 s \$0.pitch;
#X obj 280 411 s \$0.duration;
#X obj 367 411 s \$0.velocity;
#X obj 454 411 s \$0.gid;
#X obj 19 350 t a a a a a a, f 73;
#X msg 19 376 \$1 \$2;
#X msg 106 376 \$1 \$3;
#X msg 193 376 \$1 \$4;
#X msg 280 376 \$1 \$5;
#X msg 367 376 \$1 \$6;
#X msg 454 376 \$1 \$7;
#X connect 0 0 1 0;
#X connect 1 0 4 0;
#X connect 1 1 6 0;
#X connect 1 2 14 0;
#X connect 1 4 15 3;
#X connect 1 5 15 4;
#X connect 1 6 15 5;
#X connect 1 8 15 6;
#X connect 2 0 4 1;
#X connect 3 0 5 1;
#X connect 4 0 5 0;
#X connect 5 0 15 0;
#X connect 6 0 7 0;
#X connect 7 0 10 0;
#X connect 8 0 6 1;
#X connect 9 0 7 1;
#X connect 10 0 11 0;
#X connect 11 0 15 1;
#X connect 13 0 14 1;
#X connect 14 0 15 2;
#X connect 15 0 18 0;
#X connect 18 0 25 0;
#X connect 25 0 26 0;
#X connect 25 1 27 0;
#X connect 25 2 28 0;
#X connect 25 3 29 0;
#X connect 25 4 30 0;
#X connect 25 5 31 0;
#X connect 26 0 19 0;
#X connect 27 0 20 0;
#X connect 28 0 21 0;
#X connect 29 0 22 0;
#X connect 30 0 23 0;
#X connect 31 0 24 0;
#X restore 94 692 pd add.note;
#X obj 751 24 r \$0.init;
#X msg 751 47 const 0;