aboutsummaryrefslogtreecommitdiff
path: root/examples/01_basics.pd
blob: 6d0a8fb95d122132f2b8632999b1fb7b5e0fe9f8 (plain)
1
2
3
4
5
6
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
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
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
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
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
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
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
488
489
490
491
492
493
494
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
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
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
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
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
729
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
#N canvas 423 82 515 653 12;
#X declare -path ../;
#N canvas 50 112 623 384 read 0;
#X text 412 312 ch20031213;
#X text 30 25 The aim of this collection of objects is to create physical
behavior with pure data. It's not audio synthesis. But it can be used
for the creation of parameters that can be used for driving an audio
or video synthesis.;
#X text 122 263 http://www.chnry.net/ch/?120-pmpd&lang=en;
#X text 123 207 ch@chnry.net;
#X text 30 101 Most of the examples use GEM \, to allow visualization
of the "physical" geometry \, but it's not mandatory.;
#X text 30 161 Any comments \, criticism \, suggestions \, help would
be highly appreciated :;
#X text 28 240 Informations can be found online:;
#X restore 69 316 pd read me first;
#N canvas 50 92 663 567 basics 0;
#X text 29 272 This collection of objects can be interconnected for
the creation of "physical" structures. Such structures can then move
\, and distord themselves \, according to forces applied to them.;
#X text 29 350 The resulting movements are very natural \, due to the
physical equations used to define the objects.;
#X text 29 395 You have to declare the path of the pmpd externals to
use them \, for example:;
#X obj 31 441 declare -path ../;
#X text 34 30 Objects in this collection can be mass \, link and interactor
\, in 1D \, 2D or 3D.;
#X text 47 69 Masses (mass \, mass2D \, mass3D) are ponctual. They've
got a weight \, and know their position. They can move when they receive
a force \, according to physical rules.;
#X text 47 126 Links (link \, link2D \, link3D) are the basic interaction
beetween 2 masss. It is a visco-elastic link. The link object receive
the position of 2 masses \, compute the force beetween the 2 masses
and output a force for each mass.;
#X text 47 202 Interactors are a kind of link \, but influence a group
of masses at once. They can be used for global interaction. We will
look further into it later.;
#X restore 69 344 pd basics;
#N canvas 422 82 645 737 global_description 0;
#X obj 35 149 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 35 268 print;
#X obj 35 217 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X text 58 145 1;
#X text 59 216 2;
#X obj 40 591 link;
#X text 36 529 You can also create things like this :;
#X text 160 236 clicking on bang 1 or 2 is equivalent;
#X text 32 361 Masses output their position when you bang them. This
position depends on the forces applied to the mass.;
#X text 37 627 The mass1 will never receive forces \, so it will never
move. It is useful for creating a structure attached to a fixed point.
;
#X obj 106 489 mass;
#X obj 152 489 link;
#X obj 191 489 mass;
#X obj 35 168 s \$0-foo1;
#X obj 35 237 mass2D \$0-foo1;
#X obj 40 558 mass \$0-mass1;
#X obj 76 591 mass \$0-mass2;
#X text 32 23 For patching simplification \, objects in this collection
only have "cold" inlets. The computation speed depends on an external
metronome. This metronome should bang alternatively all links and then
all masses of the model.;
#X text 33 103 Masses and links have a name corresponding to their
class name. They will receive everything sent to this name.;
#X text 32 304 As you sould send a bang alternatively to links and
masses \, you sould give different names to the links group and masses
group.;
#X text 32 401 Links output a force according to the position of the
masses when you bang them. This force sould be applied to the same
mass.;
#X text 32 451 Here is the basic connection beetween 2 masses :;
#X connect 0 0 13 0;
#X connect 2 0 14 0;
#X connect 5 1 16 0;
#X connect 10 0 11 0;
#X connect 11 0 10 0;
#X connect 11 1 12 0;
#X connect 12 0 11 1;
#X connect 14 0 1 0;
#X connect 15 0 5 0;
#X connect 16 0 5 1;
#X restore 69 373 pd global_description;
#N canvas 50 97 762 661 test 0;
#X msg 104 114 1;
#X msg 70 114 0;
#X msg 37 114 -1;
#X msg 137 114 2;
#X obj 15 16 loadbang;
#X floatatom 37 185 5 0 0 0 - - -, f 5;
#X msg 106 390 1;
#X msg 72 390 0;
#X msg 39 390 -1;
#X msg 139 390 2;
#X floatatom 39 461 5 0 0 0 - - -, f 5;
#X floatatom 37 325 5 0 0 0 - - -, f 5;
#X msg 106 508 1;
#X msg 72 508 0;
#X msg 39 508 -1;
#X msg 139 508 2;
#X floatatom 39 579 5 0 0 0 - - -, f 5;
#X floatatom 172 267 5 0 0 0 - - -, f 5;
#X msg 104 264 1;
#X msg 70 264 0;
#X msg 37 264 -1;
#X msg 137 264 2;
#X obj 15 43 metro 300;
#X obj 15 69 s \$0-foo2;
#X obj 37 158 mass \$0-foo2 10 0 0;
#X obj 37 298 link \$0-foo2 0 0.1 0;
#X obj 39 434 link \$0-foo2 0 0 0.1;
#X obj 39 552 link \$0-foo2 0 0.1 0.1;
#X text 250 125 A force to a mass make it move at a constant speed.
You can accelerate it or decelerate it using message box. A nul force
as no effect.;
#X text 249 265 Rigidity link : the force is proportional to the elongation
of the link. (the right inlet is not used \, so the like take is defauld
value : 0.). Lenght of the link is null.;
#X text 250 405 Viscosity link : the force is proportional to the deformation
speed of the link;
#X text 248 529 Visco-elastic link : the effect is the sum of the 2
previous links.;
#X connect 0 0 24 0;
#X connect 1 0 24 0;
#X connect 2 0 24 0;
#X connect 3 0 24 0;
#X connect 4 0 22 0;
#X connect 6 0 26 0;
#X connect 7 0 26 0;
#X connect 8 0 26 0;
#X connect 9 0 26 0;
#X connect 12 0 27 0;
#X connect 13 0 27 0;
#X connect 14 0 27 0;
#X connect 15 0 27 0;
#X connect 17 0 25 0;
#X connect 18 0 25 0;
#X connect 19 0 25 0;
#X connect 20 0 25 0;
#X connect 21 0 25 0;
#X connect 22 0 23 0;
#X connect 24 0 5 0;
#X connect 25 0 11 0;
#X connect 26 0 10 0;
#X connect 27 0 16 0;
#X restore 71 494 pd test;
#X obj 96 432 mass;
#X obj 96 462 link;
#N canvas 100 117 451 696 list 0;
#X obj 190 135 iAmbient2D;
#X obj 305 137 iAmbient3D;
#X obj 190 166 iCircle2D;
#X obj 306 257 iCylinder3D;
#X obj 305 227 iCircle3D;
#X obj 190 196 iLine2D;
#X obj 305 197 iPlane3D;
#X obj 190 225 iSeg2D;
#X obj 305 168 iSphere3D;
#X obj 192 75 link2D;
#X obj 306 75 link3D;
#X obj 79 76 link;
#X obj 79 48 mass;
#X obj 192 48 mass2D;
#X obj 306 48 mass3D;
#X text 78 25 1D;
#X text 191 27 2D;
#X text 304 28 3D;
#X text 21 46 basic;
#X text 19 136 interactors;
#X text 24 328 test;
#X obj 192 327 tLink2D;
#X obj 307 327 tLink3D;
#X obj 192 389 tCircle2D;
#X obj 192 419 tLine2D;
#X obj 192 448 tSeg2D;
#X obj 305 480 tCylinder3D;
#X obj 306 420 tPlane3D;
#X obj 306 450 tCircle3D;
#X obj 306 390 tSphere3D;
#X obj 192 358 tSquare2D;
#X obj 307 359 tCube3D;
#X text 21 579 other;
#X obj 190 579 pmpd;
#X obj 308 578 pmpd~;
#X obj 190 601 pmpd2d;
#X obj 190 623 pmpd3d;
#X restore 71 551 pd list of pmpd's object;
#X obj 10 200 cnv 15 15 15 Ma1 M1 empty 2 10 0 14 -1 -66577 0;
#X obj 24 185 cnv 15 15 15 Ma3 M3 empty 2 10 0 14 -1 -66577 0;
#X obj 39 172 cnv 15 15 15 Ma5 M5 empty 2 10 0 14 -1 -66577 0;
#X obj 79 200 cnv 15 15 15 Ma9 M9 empty 2 10 0 14 -1 -66577 0;
#X obj 183 200 cnv 15 15 15 empty M29 empty 2 10 0 14 -1 -66577 0;
#X obj 120 200 cnv 15 15 15 Ma2 M2 empty 2 10 0 14 -1 -66577 0;
#X obj 120 160 cnv 15 15 15 Ma4 M4 empty 2 10 0 14 -1 -66577 0;
#X obj 100 170 cnv 15 15 15 Ma6 M6 empty 2 10 0 14 -1 -66577 0;
#X obj 79 160 cnv 15 15 15 Ma8 M8 empty 2 10 0 14 -1 -66577 0;
#X obj 119 180 cnv 15 15 15 Ma11 M11 empty 2 10 0 14 -1 -66577 0;
#X obj 80 180 cnv 15 15 15 Ma12 M12 empty 2 10 0 14 -1 -66577 0;
#X obj 184 172 cnv 15 15 15 Ma14 M14 empty 2 10 0 14 -1 -66577 0;
#X obj 198 187 cnv 15 15 15 Ma13 M13 empty 2 10 0 14 -1 -66577 0;
#X obj 169 185 cnv 15 15 15 Ma15 M15 empty 2 10 0 14 -1 -66577 0;
#X obj 239 180 cnv 15 15 15 empty M30 empty 2 10 0 14 -1 -66577 0;
#X obj 260 160 cnv 15 15 15 Ma20 M20 empty 2 10 0 14 -1 -66577 0;
#X obj 259 180 cnv 15 15 15 Ma17 M17 empty 2 10 0 14 -1 -66577 0;
#X obj 239 200 cnv 15 15 15 Ma19 M19 empty 2 10 0 14 -1 -66577 0;
#X obj 259 200 cnv 15 15 15 Ma18 M18 empty 2 10 0 14 -1 -66577 0;
#N canvas 50 87 470 320 pmpd 0;
#X msg 143 132 reset;
#X obj 7 70 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1;
#X obj 7 88 metro 50;
#N canvas 538 140 1126 757 structure 0;
#N canvas 50 82 478 328 mass1 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M1 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 10 50 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 14 253 pd mass1;
#N canvas 50 82 470 320 mass3 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M3 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 10 30 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 23 143 pd mass3;
#N canvas 50 82 474 324 mass5 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M5 pos \$1 \$2 \;;
#X obj 75 84 mass2D \$0-mass1 1 10 10 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 26 58 pd mass5;
#N canvas 50 82 472 322 mass7 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M7 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 30 10 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 324 62 pd mass7;
#X obj 132 -19 r G;
#N canvas 50 82 494 344 mass2 0;
#X obj 79 57 inlet;
#X obj 100 154 outlet;
#X msg 79 110 \; M2 pos \$1 \$2 \;;
#X obj 79 82 mass2D \$0-mass1 1 120 50 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 486 317 pd mass2;
#N canvas 50 82 486 336 mass4 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M4 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 120 10 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 503 33 pd mass4;
#N canvas 50 82 484 334 mass6 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M6 pos \$1 \$2 \;;
#X obj 78 84 mass2D \$0-mass1 1 100 20 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 640 109 pd mass6;
#N canvas 50 82 482 332 mass8 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 80 110 \; M8 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 80 10 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 767 36 pd mass8;
#N canvas 50 82 484 334 mass9 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M9 pos \$1 \$2 \;;
#X obj 78 84 mass2D \$0-mass1 1 80 50 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 722 335 pd mass9;
#N canvas 50 82 484 334 mass11 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M11 pos \$1 \$2 \;;
#X obj 78 84 mass2D \$0-mass1 1 120 30 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 490 216 pd mass11;
#N canvas 50 82 484 334 mass12 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M12 pos \$1 \$2 \;;
#X obj 78 84 mass2D \$0-mass1 1 80 30 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 821 226 pd mass12;
#X obj 497 -9 r G;
#X msg 499 9 force2D 0 0.1;
#X msg 132 7 force2D 0 0.3;
#N canvas 50 82 488 338 mass1 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M16 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 170 50 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 18 610 pd mass1;
#N canvas 50 82 476 326 mass3 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M15 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 170 30 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 27 500 pd mass3;
#N canvas 50 82 482 332 mass5 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M14 pos \$1 \$2 \;;
#X obj 78 84 mass2D \$0-mass1 1 170 10 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 30 415 pd mass5;
#N canvas 50 82 480 330 mass7 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 109 \; M13 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 190 10 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 363 409 pd mass7;
#X obj 46 316 r G;
#X msg 46 342 force2D 0 0.3;
#N canvas 50 82 500 350 mass1 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 98 115 \; M20 pos \$1 \$2 \;;
#X obj 79 83 mass2D \$0-mass1 1 260 10 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 533 628 pd mass1;
#N canvas 50 82 482 332 mass3 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M17 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 260 30 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 542 518 pd mass3;
#N canvas 50 82 484 334 mass5 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 110 \; M18 pos \$1 \$2 \;;
#X obj 78 84 mass2D \$0-mass1 1 260 50 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 545 433 pd mass5;
#N canvas 215 196 484 334 mass7 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 109 \; M19 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 240 50 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 856 420 pd mass7;
#X obj 561 376 r G;
#X msg 561 402 force2D 0 0.3;
#N canvas 50 82 476 326 mass8 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 103 110 \; M28 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 30 30 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 347 153 pd mass8;
#N canvas 50 82 484 334 mass7 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 79 109 \; M29 pos \$1 \$2 \;;
#X obj 79 86 mass2D \$0-mass1 1 190 30 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 341 492 pd mass7;
#N canvas 215 196 486 336 mass7 0;
#X obj 79 57 inlet;
#X obj 79 195 outlet;
#X msg 77 109 \; M30 pos \$1 \$2 \;;
#X obj 79 84 mass2D \$0-mass1 1 240 30 0 1000 0 200;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 840 522 pd mass7;
#X obj 139 47 link2D \$0-link1 10 0.8;
#X obj 143 73 link2D \$0-link1 14 0.6;
#X obj 146 126 link2D \$0-link1 14 0.6;
#X obj 160 154 link2D \$0-link1 10 0.8;
#X obj 163 213 link2D \$0-link1 12 0.8;
#X obj 20 180 link2D \$0-link1 10 0.8 0 0.1;
#X obj 17 215 link2D \$0-link1 10 0.8;
#X obj 18 96 link2D \$0-link1 10 0.8 0 0.1;
#X obj 251 101 link2D \$0-link1 10 0.8 0 0.1;
#X obj 592 45 link2D \$0-link1 12 0.3;
#X obj 669 75 link2D \$0-link1 12 0.5 0.1;
#X obj 485 74 link2D \$0-link1 12 0.5 0.1;
#X obj 737 108 link2D \$0-link1 12 0.3 0.1;
#X obj 469 131 link2D \$0-link1 12 0.3 0.1;
#X obj 509 157 link2D \$0-link1 12 0.3;
#X obj 531 185 link2D \$0-link1 12 0.3;
#X obj 665 154 link2D \$0-link1 12 0.3;
#X obj 676 190 link2D \$0-link1 12 0.3;
#X obj 634 214 link2D \$0-link1 12 0.3;
#X obj 665 237 link2D \$0-link1 12 0.5;
#X obj 494 242 link2D \$0-link1 12 0.5;
#X obj 486 266 link2D \$0-link1 12 0.3 0.1;
#X obj 691 281 link2D \$0-link1 12 0.3 0.1;
#X obj 570 315 link2D \$0-link1 12 0.3;
#X obj 148 410 link2D \$0-link1 10 0.8;
#X obj 144 433 link2D \$0-link1 14 0.6;
#X obj 251 453 link2D \$0-link1 10 0.8 0 0.1;
#X obj 29 458 link2D \$0-link1 10 0.8 0 0.1;
#X obj 144 480 link2D \$0-link1 14 0.6;
#X obj 141 502 link2D \$0-link1 10 0.8;
#X obj 24 537 link2D \$0-link1 10 0.8 0 0.1;
#X obj 21 572 link2D \$0-link1 10 0.8;
#X obj 160 568 link2D \$0-link1 12 0.8;
#X obj 544 476 link2D \$0-link1 10 0.8 0 0.1;
#X obj 539 555 link2D \$0-link1 10 0.8 0 0.1;
#X obj 536 590 link2D \$0-link1 10 0.8;
#X obj 707 590 link2D \$0-link1 12 0.8;
#X obj 678 519 link2D \$0-link1 10 0.8;
#X obj 683 493 link2D \$0-link1 14 0.6;
#X obj 740 471 link2D \$0-link1 10 0.8 0 0.1;
#X obj 689 451 link2D \$0-link1 14 0.6;
#X obj 690 430 link2D \$0-link1 10 0.8;
#X connect 0 0 34 0;
#X connect 0 0 35 1;
#X connect 0 0 36 1;
#X connect 1 0 31 0;
#X connect 1 0 33 0;
#X connect 1 0 35 0;
#X connect 1 0 37 1;
#X connect 2 0 30 0;
#X connect 2 0 32 0;
#X connect 2 0 36 0;
#X connect 2 0 37 0;
#X connect 3 0 30 1;
#X connect 3 0 31 1;
#X connect 3 0 34 1;
#X connect 3 0 38 0;
#X connect 4 0 14 0;
#X connect 5 0 44 0;
#X connect 5 0 50 0;
#X connect 5 0 51 1;
#X connect 5 0 53 0;
#X connect 6 0 39 0;
#X connect 6 0 41 0;
#X connect 6 0 43 1;
#X connect 6 0 46 0;
#X connect 6 0 47 0;
#X connect 7 0 40 0;
#X connect 7 0 41 1;
#X connect 7 0 49 0;
#X connect 7 0 50 1;
#X connect 8 0 39 1;
#X connect 8 0 40 1;
#X connect 8 0 42 1;
#X connect 8 0 44 1;
#X connect 8 0 45 1;
#X connect 9 0 46 1;
#X connect 9 0 49 1;
#X connect 9 0 52 0;
#X connect 9 0 53 1;
#X connect 10 0 43 0;
#X connect 10 0 45 0;
#X connect 10 0 48 0;
#X connect 10 0 51 0;
#X connect 11 0 42 0;
#X connect 11 0 47 1;
#X connect 11 0 48 1;
#X connect 11 0 52 1;
#X connect 12 0 13 0;
#X connect 13 0 10 0;
#X connect 13 0 6 0;
#X connect 13 0 8 0;
#X connect 13 0 5 0;
#X connect 13 0 9 0;
#X connect 13 0 7 0;
#X connect 13 0 11 0;
#X connect 14 0 2 0;
#X connect 14 0 1 0;
#X connect 14 0 0 0;
#X connect 14 0 3 0;
#X connect 14 0 27 0;
#X connect 15 0 60 1;
#X connect 15 0 61 1;
#X connect 15 0 62 0;
#X connect 16 0 55 0;
#X connect 16 0 57 1;
#X connect 16 0 59 0;
#X connect 16 0 60 0;
#X connect 17 0 54 0;
#X connect 17 0 57 0;
#X connect 17 0 58 0;
#X connect 17 0 61 0;
#X connect 18 0 54 1;
#X connect 18 0 55 1;
#X connect 18 0 56 0;
#X connect 18 0 62 1;
#X connect 19 0 20 0;
#X connect 20 0 17 0;
#X connect 20 0 16 0;
#X connect 20 0 15 0;
#X connect 20 0 18 0;
#X connect 20 0 28 0;
#X connect 21 0 64 1;
#X connect 21 0 65 1;
#X connect 21 0 66 0;
#X connect 22 0 63 1;
#X connect 22 0 64 0;
#X connect 22 0 67 0;
#X connect 22 0 70 0;
#X connect 23 0 63 0;
#X connect 23 0 65 0;
#X connect 23 0 68 0;
#X connect 23 0 71 0;
#X connect 24 0 66 1;
#X connect 24 0 69 0;
#X connect 24 0 70 1;
#X connect 24 0 71 1;
#X connect 25 0 26 0;
#X connect 26 0 23 0;
#X connect 26 0 22 0;
#X connect 26 0 21 0;
#X connect 26 0 24 0;
#X connect 26 0 29 0;
#X connect 27 0 32 1;
#X connect 27 0 33 1;
#X connect 27 0 38 1;
#X connect 28 0 56 1;
#X connect 28 0 58 1;
#X connect 28 0 59 1;
#X connect 29 0 67 1;
#X connect 29 0 68 1;
#X connect 29 0 69 1;
#X connect 30 0 2 0;
#X connect 30 1 3 0;
#X connect 31 0 1 0;
#X connect 31 1 3 0;
#X connect 32 0 2 0;
#X connect 32 1 27 0;
#X connect 33 0 1 0;
#X connect 33 1 27 0;
#X connect 34 0 0 0;
#X connect 34 1 3 0;
#X connect 35 0 1 0;
#X connect 35 1 0 0;
#X connect 36 0 2 0;
#X connect 36 1 0 0;
#X connect 37 0 2 0;
#X connect 37 1 1 0;
#X connect 38 0 3 0;
#X connect 38 1 27 0;
#X connect 39 0 6 0;
#X connect 39 1 8 0;
#X connect 40 0 7 0;
#X connect 40 1 8 0;
#X connect 41 0 6 0;
#X connect 41 1 7 0;
#X connect 42 0 11 0;
#X connect 42 1 8 0;
#X connect 43 0 10 0;
#X connect 43 1 6 0;
#X connect 44 0 5 0;
#X connect 44 1 8 0;
#X connect 45 0 10 0;
#X connect 45 1 8 0;
#X connect 46 0 6 0;
#X connect 46 1 9 0;
#X connect 47 0 6 0;
#X connect 47 1 11 0;
#X connect 48 0 10 0;
#X connect 48 1 11 0;
#X connect 49 0 7 0;
#X connect 49 1 9 0;
#X connect 50 0 5 0;
#X connect 50 1 7 0;
#X connect 51 0 10 0;
#X connect 51 1 5 0;
#X connect 52 0 9 0;
#X connect 52 1 11 0;
#X connect 53 0 5 0;
#X connect 53 1 9 0;
#X connect 54 0 17 0;
#X connect 54 1 18 0;
#X connect 55 0 16 0;
#X connect 55 1 18 0;
#X connect 56 0 18 0;
#X connect 56 1 28 0;
#X connect 57 0 17 0;
#X connect 57 1 16 0;
#X connect 58 0 17 0;
#X connect 58 1 28 0;
#X connect 59 0 16 0;
#X connect 59 1 28 0;
#X connect 60 0 16 0;
#X connect 60 1 15 0;
#X connect 61 0 17 0;
#X connect 61 1 15 0;
#X connect 62 0 15 0;
#X connect 62 1 18 0;
#X connect 63 0 23 0;
#X connect 63 1 22 0;
#X connect 64 0 22 0;
#X connect 64 1 21 0;
#X connect 65 0 23 0;
#X connect 65 1 21 0;
#X connect 66 0 21 0;
#X connect 66 1 24 0;
#X connect 67 0 22 0;
#X connect 67 1 29 0;
#X connect 68 0 23 0;
#X connect 68 1 29 0;
#X connect 69 0 24 0;
#X connect 69 1 29 0;
#X connect 70 0 22 0;
#X connect 70 1 24 0;
#X connect 71 0 23 0;
#X connect 71 1 24 0;
#X restore 121 193 pd structure;
#X msg 118 157 resetL \, resetF;
#X obj 7 112 t b b;
#X obj 42 135 s G;
#X obj 118 110 t b b;
#X obj 116 66 inlet;
#X obj 62 24 loadbang;
#X obj 30 66 delay 3000;
#X obj 32 168 s \$0-link1;
#X obj 7 196 s \$0-mass1;
#X connect 0 0 12 0;
#X connect 1 0 2 0;
#X connect 2 0 5 0;
#X connect 4 0 11 0;
#X connect 5 0 12 0;
#X connect 5 1 6 0;
#X connect 5 1 11 0;
#X connect 7 0 4 0;
#X connect 7 1 0 0;
#X connect 8 0 7 0;
#X connect 9 0 7 0;
#X connect 9 0 10 0;
#X connect 10 0 2 0;
#X restore 9 597 pd pmpd;
#X obj 9 575 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X obj 1 216 cnv 10 500 10 empty empty empty 20 12 0 14 -99865 -66577
0;
#X obj 53 187 cnv 15 15 15 Ma7 M7 empty 2 10 0 14 -1 -66577 0;
#X obj 38 200 cnv 15 15 15 empty M28 empty 2 10 0 14 -1 -66577 0;
#X obj 155 200 cnv 15 15 15 Ma16 M16 empty 2 10 0 14 -1 -66577 0;
#X text 66 263 Physical modeling for pure data using a collection of
physical ojects.;
#X text 95 409 Look at mass and link help file :;
#N canvas 255 121 879 595 simple_example 0;
#X obj 356 237 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144
-1 -1 0 0;
#X obj 169 109 hradio 15 1 0 5 empty empty empty 0 -6 0 8 -262144 -1
-1 0;
#N canvas 477 50 445 299 preset 0;
#X msg 36 193 setK 0.05 \, setD 0 \, setD2 30;
#X msg 55 166 setK 1 \, setD 0 \, setD2 30;
#X msg 75 138 setK 1 \, setD 0 \, setD2 200;
#X obj 36 16 inlet;
#X obj 115 254 outlet;
#X msg 95 108 setK 300 \, setD 300 \, setD2 5;
#X obj 36 43 sel 2 1 0 3 4;
#X msg 115 78 setK 3000 \, setD 1000 \, setD2 5000;
#X connect 0 0 4 0;
#X connect 1 0 4 0;
#X connect 2 0 4 0;
#X connect 3 0 6 0;
#X connect 5 0 4 0;
#X connect 6 0 0 0;
#X connect 6 1 1 0;
#X connect 6 2 2 0;
#X connect 6 3 5 0;
#X connect 6 4 7 0;
#X connect 7 0 4 0;
#X restore 169 130 pd preset;
#X obj 336 237 vsl 15 128 0 127 0 0 empty empty empty 0 -8 0 8 -262144
-1 -1 0 0;
#N canvas 50 110 268 186 stuff 0;
#X obj 13 20 loadbang;
#X obj 48 97 s \$0-link;
#X obj 13 72 t b b;
#X obj 13 123 s \$0-mass;
#X obj 13 45 metro 5;
#X obj 89 20 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
#X msg 124 92 reset;
#X msg 89 66 resetL \, resetF;
#X obj 89 40 t b b;
#X connect 0 0 4 0;
#X connect 2 0 3 0;
#X connect 2 1 1 0;
#X connect 4 0 2 0;
#X connect 5 0 8 0;
#X connect 6 0 3 0;
#X connect 7 0 1 0;
#X connect 8 0 7 0;
#X connect 8 1 6 0;
#X restore 75 65 pd stuff;
#X text 98 346 click or move the slider ->;
#X obj 169 167 link \$0-link 0 1 0 200;
#X obj 356 167 mass \$0-mass 10000 0;
#X text 268 106 <- differents comportement of the link;
#X text 396 346 look at the movement of the mass (the right slider)
;
#X text 80 415 The mass is linked to the cursor with differents kind
of link (see the preset);
#X text 80 461 Surch system can be useful for replacing the line object
of pd when more natural evolution is needed...;
#X text 71 18 Behavior of a single mass linked to a fixed point with
a visco elastic link.;
#X connect 1 0 2 0;
#X connect 2 0 6 0;
#X connect 3 0 6 0;
#X connect 6 1 7 0;
#X connect 7 0 0 0;
#X connect 7 0 6 1;
#X restore 71 521 pd simple_example;
#X connect 27 0 26 0;