pianorollseq.pd 20.5 KB
Newer Older
1
#N struct 1003.vertgrid float x float y float w float h;
Roman Haefeli's avatar
Roman Haefeli committed
2
3
4
#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;
5
#N canvas 705 99 1045 815 10;
6
#N canvas 114 134 823 724 testfeld 1;
Roman Haefeli's avatar
Roman Haefeli committed
7
8
9
10
11
12
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
#X scalar 1003.vertgrid 90 40 15 672 \;;
#X scalar 1003.vertgrid 105 40 15 672 \;;
#X scalar 1003.vertgrid 120 40 15 672 \;;
#X scalar 1003.vertgrid 135 40 15 672 \;;
#X scalar 1003.vertgrid 150 40 15 672 \;;
#X scalar 1003.vertgrid 165 40 15 672 \;;
#X scalar 1003.vertgrid 180 40 15 672 \;;
#X scalar 1003.vertgrid 195 40 15 672 \;;
#X scalar 1003.vertgrid 210 40 15 672 \;;
#X scalar 1003.vertgrid 225 40 15 672 \;;
#X scalar 1003.vertgrid 240 40 15 672 \;;
#X scalar 1003.vertgrid 255 40 15 672 \;;
#X scalar 1003.vertgrid 270 40 15 672 \;;
#X scalar 1003.vertgrid 285 40 15 672 \;;
#X scalar 1003.vertgrid 300 40 15 672 \;;
#X scalar 1003.vertgrid 315 40 15 672 \;;
#X scalar 1003.vertgrid 330 40 15 672 \;;
#X scalar 1003.vertgrid 345 40 15 672 \;;
#X scalar 1003.vertgrid 360 40 15 672 \;;
#X scalar 1003.vertgrid 375 40 15 672 \;;
#X scalar 1003.vertgrid 390 40 15 672 \;;
#X scalar 1003.vertgrid 405 40 15 672 \;;
#X scalar 1003.vertgrid 420 40 15 672 \;;
#X scalar 1003.vertgrid 435 40 15 672 \;;
#X scalar 1003.vertgrid 450 40 15 672 \;;
#X scalar 1003.vertgrid 465 40 15 672 \;;
#X scalar 1003.vertgrid 480 40 15 672 \;;
#X scalar 1003.vertgrid 495 40 15 672 \;;
#X scalar 1003.vertgrid 510 40 15 672 \;;
#X scalar 1003.vertgrid 525 40 15 672 \;;
#X scalar 1003.vertgrid 540 40 15 672 \;;
#X scalar 1003.vertgrid 555 40 15 672 \;;
#X scalar 1003.vertgrid 570 40 15 672 \;;
#X scalar 1003.vertgrid 585 40 15 672 \;;
#X scalar 1003.vertgrid 600 40 15 672 \;;
#X scalar 1003.vertgrid 615 40 15 672 \;;
#X scalar 1003.vertgrid 630 40 15 672 \;;
#X scalar 1003.vertgrid 645 40 15 672 \;;
#X scalar 1003.vertgrid 660 40 15 672 \;;
#X scalar 1003.vertgrid 675 40 15 672 \;;
#X scalar 1003.vertgrid 690 40 15 672 \;;
#X scalar 1003.vertgrid 705 40 15 672 \;;
#X scalar 1003.vertgrid 720 40 15 672 \;;
#X scalar 1003.vertgrid 735 40 15 672 \;;
#X scalar 1003.vertgrid 750 40 15 672 \;;
#X scalar 1003.vertgrid 765 40 15 672 \;;
#X scalar 1003.vertgrid 780 40 15 672 \;;
#X scalar 1003.vertgrid 795 40 15 672 \;;
#X scalar 1003.horizgrid 90 40 720 14 887 \;;
#X scalar 1003.horizgrid 90 54 720 14 777 \;;
#X scalar 1003.horizgrid 90 68 720 14 887 \;;
#X scalar 1003.horizgrid 90 82 720 14 777 \;;
#X scalar 1003.horizgrid 90 96 720 14 887 \;;
#X scalar 1003.horizgrid 90 110 720 14 777 \;;
#X scalar 1003.horizgrid 90 124 720 14 887 \;;
#X scalar 1003.horizgrid 90 138 720 14 887 \;;
#X scalar 1003.horizgrid 90 152 720 14 777 \;;
#X scalar 1003.horizgrid 90 166 720 14 887 \;;
#X scalar 1003.horizgrid 90 180 720 14 777 \;;
#X scalar 1003.horizgrid 90 194 720 14 887 \;;
#X scalar 1003.horizgrid 90 208 720 14 887 \;;
#X scalar 1003.horizgrid 90 222 720 14 777 \;;
#X scalar 1003.horizgrid 90 236 720 14 887 \;;
#X scalar 1003.horizgrid 90 250 720 14 777 \;;
#X scalar 1003.horizgrid 90 264 720 14 887 \;;
#X scalar 1003.horizgrid 90 278 720 14 777 \;;
#X scalar 1003.horizgrid 90 292 720 14 887 \;;
#X scalar 1003.horizgrid 90 306 720 14 887 \;;
#X scalar 1003.horizgrid 90 320 720 14 777 \;;
#X scalar 1003.horizgrid 90 334 720 14 887 \;;
#X scalar 1003.horizgrid 90 348 720 14 777 \;;
#X scalar 1003.horizgrid 90 362 720 14 887 \;;
#X scalar 1003.horizgrid 90 376 720 14 887 \;;
#X scalar 1003.horizgrid 90 390 720 14 777 \;;
#X scalar 1003.horizgrid 90 404 720 14 887 \;;
#X scalar 1003.horizgrid 90 418 720 14 777 \;;
#X scalar 1003.horizgrid 90 432 720 14 887 \;;
#X scalar 1003.horizgrid 90 446 720 14 777 \;;
#X scalar 1003.horizgrid 90 460 720 14 887 \;;
#X scalar 1003.horizgrid 90 474 720 14 887 \;;
#X scalar 1003.horizgrid 90 488 720 14 777 \;;
#X scalar 1003.horizgrid 90 502 720 14 887 \;;
#X scalar 1003.horizgrid 90 516 720 14 777 \;;
#X scalar 1003.horizgrid 90 530 720 14 887 \;;
#X scalar 1003.horizgrid 90 544 720 14 887 \;;
#X scalar 1003.horizgrid 90 558 720 14 777 \;;
#X scalar 1003.horizgrid 90 572 720 14 887 \;;
#X scalar 1003.horizgrid 90 586 720 14 777 \;;
#X scalar 1003.horizgrid 90 600 720 14 887 \;;
#X scalar 1003.horizgrid 90 614 720 14 777 \;;
#X scalar 1003.horizgrid 90 628 720 14 887 \;;
#X scalar 1003.horizgrid 90 642 720 14 887 \;;
#X scalar 1003.horizgrid 90 656 720 14 777 \;;
#X scalar 1003.horizgrid 90 670 720 14 887 \;;
#X scalar 1003.horizgrid 90 684 720 14 777 \;;
#X scalar 1003.horizgrid 90 698 720 14 887 \;;
#X scalar 1003.vertline 90 40 672 0 1 1 \;;
#X scalar 1003.vertline 105 40 672 888 1 0 \;;
#X scalar 1003.vertline 120 40 672 888 1 0 \;;
#X scalar 1003.vertline 135 40 672 888 1 0 \;;
#X scalar 1003.vertline 150 40 672 666 1 0 \;;
#X scalar 1003.vertline 165 40 672 888 1 0 \;;
#X scalar 1003.vertline 180 40 672 888 1 0 \;;
#X scalar 1003.vertline 195 40 672 888 1 0 \;;
#X scalar 1003.vertline 210 40 672 666 1 0 \;;
#X scalar 1003.vertline 225 40 672 888 1 0 \;;
#X scalar 1003.vertline 240 40 672 888 1 0 \;;
#X scalar 1003.vertline 255 40 672 888 1 0 \;;
#X scalar 1003.vertline 270 40 672 666 1 0 \;;
#X scalar 1003.vertline 285 40 672 888 1 0 \;;
#X scalar 1003.vertline 300 40 672 888 1 0 \;;
#X scalar 1003.vertline 315 40 672 888 1 0 \;;
#X scalar 1003.vertline 330 40 672 0 2 1 \;;
#X scalar 1003.vertline 345 40 672 888 2 0 \;;
#X scalar 1003.vertline 360 40 672 888 2 0 \;;
#X scalar 1003.vertline 375 40 672 888 2 0 \;;
#X scalar 1003.vertline 390 40 672 666 2 0 \;;
#X scalar 1003.vertline 405 40 672 888 2 0 \;;
#X scalar 1003.vertline 420 40 672 888 2 0 \;;
#X scalar 1003.vertline 435 40 672 888 2 0 \;;
#X scalar 1003.vertline 450 40 672 666 2 0 \;;
#X scalar 1003.vertline 465 40 672 888 2 0 \;;
#X scalar 1003.vertline 480 40 672 888 2 0 \;;
#X scalar 1003.vertline 495 40 672 888 2 0 \;;
#X scalar 1003.vertline 510 40 672 666 2 0 \;;
#X scalar 1003.vertline 525 40 672 888 2 0 \;;
#X scalar 1003.vertline 540 40 672 888 2 0 \;;
#X scalar 1003.vertline 555 40 672 888 2 0 \;;
#X scalar 1003.vertline 570 40 672 0 3 1 \;;
#X scalar 1003.vertline 585 40 672 888 3 0 \;;
#X scalar 1003.vertline 600 40 672 888 3 0 \;;
#X scalar 1003.vertline 615 40 672 888 3 0 \;;
#X scalar 1003.vertline 630 40 672 666 3 0 \;;
#X scalar 1003.vertline 645 40 672 888 3 0 \;;
#X scalar 1003.vertline 660 40 672 888 3 0 \;;
#X scalar 1003.vertline 675 40 672 888 3 0 \;;
#X scalar 1003.vertline 690 40 672 666 3 0 \;;
#X scalar 1003.vertline 705 40 672 888 3 0 \;;
#X scalar 1003.vertline 720 40 672 888 3 0 \;;
#X scalar 1003.vertline 735 40 672 888 3 0 \;;
#X scalar 1003.vertline 750 40 672 666 3 0 \;;
#X scalar 1003.vertline 765 40 672 888 3 0 \;;
#X scalar 1003.vertline 780 40 672 888 3 0 \;;
#X scalar 1003.vertline 795 40 672 888 3 0 \;;
#X scalar 1003.vertline 810 40 672 0 4 1 \;;
Roman Haefeli's avatar
Roman Haefeli committed
152
#X restore 39 55 pd testfeld;
153
#X obj 346 184 s pd-testfeld;
154
#X msg 622 275 clear;
155
#X msg 325 58 scalar rechteck 20 100 20 64 555;
Roman Haefeli's avatar
Roman Haefeli committed
156
#X obj 571 409 s pd-testfeld;
157
#X obj 67 616 s pd-testfeld;
Roman Haefeli's avatar
Roman Haefeli committed
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
#N canvas 1083 335 554 421 rechteck-template 0;
#X obj 51 231 get rechteck x y len vel;
#X floatatom 51 330 5 0 0 0 - - -, f 5;
#X floatatom 98 330 5 0 0 0 - - -, f 5;
#X floatatom 145 330 5 0 0 0 - - -, f 5;
#X obj 51 198 t p p;
#X obj 371 237 int;
#X obj 192 261 max 0;
#X obj 192 284 min 127;
#X obj 371 209 / 14.2;
#X obj 51 175 route click change;
#X obj 307 296 set rechteck vel color;
#X obj 307 184 t a a;
#X obj 192 307 t a a;
#X floatatom 192 330 5 0 0 0 - - -, f 5;
#X obj 370 260 * 100;
#X obj 104 147 print rechteck;
#X obj 32 141 t a a a;
#X obj 32 375 outlet;
177
178
179
180
181
#X obj 32 54 filledpolygon -v vis color 555 1 0 0 0 13 len(0:1000)(12:1012)
13 len(0:1000)(12:1012) 0;
#X obj 32 105 struct rechteck float x float y float len float vel float
color float id float vis;
#X obj 32 34 drawnumber -v vis vel 1 -14 0;
Roman Haefeli's avatar
Roman Haefeli committed
182
183
184
#X connect 0 0 1 0;
#X connect 0 1 2 0;
#X connect 0 2 3 0;
185
#X connect 0 3 6 0;
Roman Haefeli's avatar
Roman Haefeli committed
186
#X connect 4 0 0 0;
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
#X connect 4 1 10 2;
#X connect 5 0 14 0;
#X connect 6 0 7 0;
#X connect 7 0 12 0;
#X connect 8 0 5 0;
#X connect 9 0 4 0;
#X connect 9 1 4 0;
#X connect 11 0 10 0;
#X connect 11 1 8 0;
#X connect 12 0 13 0;
#X connect 12 1 11 0;
#X connect 14 0 10 1;
#X connect 16 0 17 0;
#X connect 16 1 9 0;
#X connect 16 2 15 0;
#X connect 19 0 16 0;
Roman Haefeli's avatar
Roman Haefeli committed
203
204
205
206
207
208
209
210
211
212
213
214
215
#X restore 252 253 pd rechteck-template;
#X obj 376 529 t p p;
#X obj 376 560 get raster x y;
#X obj 376 589 pack f f;
#X obj 376 612 outlet;
#X obj 67 276 route click;
#X obj 67 324 b;
#X obj 67 453 pointer;
#X obj 67 300 t a p;
#X obj 67 350 t b b;
#X obj 67 373 del 0;
#X obj 67 400 f;
#X msg 110 376 1;
216
#X msg 252 359 0;
Roman Haefeli's avatar
Roman Haefeli committed
217
218
219
220
#X obj 67 426 sel 1;
#X obj 67 481 get raster x y;
#X obj 67 504 pack f f;
#N canvas 0 99 483 432 detect_double_click 0;
221
222
#X obj 91 101 -;
#X obj 90 76 t a a;
Roman Haefeli's avatar
Roman Haefeli committed
223
224
225
#X obj 19 23 inlet;
#X text 109 21 this detects two clicks on the same scalar within a
certain period.;
226
227
228
229
#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
230
#X obj 19 48 t b a;
231
232
233
234
235
236
237
238
239
240
241
242
243
244
#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
245
#X connect 9 0 10 0;
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
#X connect 11 0 9 0;
#X restore 279 398 pd detect_double_click;
#X obj 130 522 f;
#X obj 130 545 t a a;
#X obj 177 532 + 1;
#X msg 67 592 scalar rechteck \$1 \$2 20 64 400 \$3 1;
#X obj 67 527 t a b;
#X obj 67 569 list append;
#X obj 279 372 get rechteck id;
#X obj 252 277 unpack s p f;
#X obj 252 300 sel click;
#X msg 279 421 0;
#X obj 252 322 t b b;
#X obj 279 346 pointer;
#X obj 279 469 set rechteck vis;
#X obj 835 17 array define \$0.active 1000;
#X obj 835 38 array define \$0.step 1000;
#X obj 835 61 array define \$0.pitch 1000;
#X obj 835 84 array define \$0.length 1000;
#X obj 835 107 array define \$0.velocity 1000;
#X obj 673 17 loadbang;
#X obj 673 40 \$0;
Roman Haefeli's avatar
Roman Haefeli committed
268
#X obj 571 208 r \$0.init;
269
270
#X obj 651 16 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
#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
290
#X connect 3 0 1 0;
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
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
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
#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;
#X obj 23 90 f;
#X obj 23 113 outlet;
#X obj 38 65 r \$0.stepvisheight;
#X connect 0 0 1 0;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 4 0 2 1;
#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;
Roman Haefeli's avatar
Roman Haefeli committed
393
#X restore 588 328 pd create_horizgrid;
394
395
396
397
#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
398
399
#X obj 20 73 s \$0.horizgrid.send;
#X connect 1 0 2 0;
400
#X restore 737 294 pd horizgrid-template;
Roman Haefeli's avatar
Roman Haefeli committed
401
#N canvas 60 99 380 157 vertgrid-template 0;
402
403
#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
404
405
406
407
#X obj 19 66 s \$0.vertgrid.send;
#X connect 1 0 2 0;
#X restore 736 321 pd vertgrid-template;
#N canvas 133 127 401 394 create_vertgrid 0;
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
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
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
#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;
#X obj 31 127 r \$0.stepviswidth;
#X obj 16 45 b;
#X obj 16 155 f;
#X connect 0 0 3 0;
#X connect 2 0 4 1;
#X connect 3 0 4 0;
#X connect 4 0 1 0;
#X restore 92 234 pd w;
#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 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
488
#X connect 12 0 13 0;
489
490
491
492
493
494
495
496
#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;
Roman Haefeli's avatar
Roman Haefeli committed
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
#X restore 605 300 pd create_vertgrid;
#X obj 587 493 r \$0.horizgrid.send;
#X obj 587 516 route click;
#X obj 587 539 get \$0.horizgrid y;
#X obj 632 584 route click;
#X obj 632 561 r \$0.vertgrid.send;
#X obj 587 644 pack f f;
#X obj 632 607 get \$0.vertgrid x;
#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;
#X restore 736 348 pd vertline-template;
#X obj 571 248 t b b b b;
514
#N canvas 53 99 400 432 create_vertline 0;
Roman Haefeli's avatar
Roman Haefeli committed
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
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
#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;
610
611
612
#X obj 109 197 mod;
#X obj 109 225 == 0;
#X obj 109 268 outlet;
Roman Haefeli's avatar
Roman Haefeli committed
613
#X obj 20 184 + 1;
614
615
616
#X obj 170 115 r \$0.stepcount;
#X obj 78 174 sel;
#X msg 78 200 0;
Roman Haefeli's avatar
Roman Haefeli committed
617
618
619
620
621
622
623
624
625
#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;
626
#X connect 7 1 13 0;
Roman Haefeli's avatar
Roman Haefeli committed
627
628
629
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 11 0 1 0;
630
631
632
633
#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
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
#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;
#X restore 571 356 pd create_vertline;
#X obj 593 695 print;
#X msg 674 63 \; \$1.stepcount 48 \; \$1.pitchrange 48 \; \$1.stepviswidth
15 \; \$1.stepvisheight 14 \; \$1.canvastopmargin 40 \; \$1.canvasleftmargin
90 \; \$1.stepkeycolor1 887 \; \$1.stepkeycolor2 777 \; \$1.griddivision
4 \; \$1.gridsubdivision 4 \; \$1.init bang \;;
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
#X connect 2 0 4 0;
#X connect 3 0 1 0;
#X connect 6 0 31 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 8 1 9 1;
#X connect 9 0 10 0;
#X connect 11 0 14 0;
#X connect 12 0 15 0;
#X connect 13 0 21 0;
#X connect 14 0 12 0;
#X connect 14 1 13 1;
#X connect 15 0 16 0;
#X connect 15 1 18 0;
#X connect 16 0 17 0;
#X connect 17 0 20 0;
#X connect 18 0 17 1;
#X connect 19 0 17 1;
#X connect 20 0 13 0;
#X connect 21 0 22 0;
#X connect 21 1 22 1;
#X connect 22 0 28 0;
#X connect 23 0 33 0;
#X connect 24 0 25 0;
#X connect 25 0 29 1;
#X connect 25 1 26 0;
#X connect 26 0 24 1;
#X connect 27 0 5 0;
#X connect 28 0 29 0;
#X connect 28 1 24 0;
#X connect 29 0 27 0;
#X connect 30 0 23 0;
703
#X connect 31 0 32 0;
704
705
706
707
708
709
710
711
#X connect 31 1 35 1;
#X connect 31 1 36 1;
#X connect 32 0 34 0;
#X connect 33 0 36 0;
#X connect 34 0 19 0;
#X connect 34 1 35 0;
#X connect 35 0 30 0;
#X connect 42 0 43 0;
Roman Haefeli's avatar
Roman Haefeli committed
712
713
#X connect 43 0 61 0;
#X connect 44 0 58 0;
714
#X connect 45 0 43 0;
Roman Haefeli's avatar
Roman Haefeli committed
715
716
717
718
719
720
721
722
723
724
725
726
727
728
#X connect 46 0 4 0;
#X connect 49 0 4 0;
#X connect 50 0 51 0;
#X connect 51 0 52 0;
#X connect 52 0 55 0;
#X connect 53 0 56 0;
#X connect 54 0 53 0;
#X connect 55 0 60 0;
#X connect 56 0 55 1;
#X connect 58 0 59 0;
#X connect 58 1 46 0;
#X connect 58 2 49 0;
#X connect 58 3 2 0;
#X connect 59 0 4 0;