aboutsummaryrefslogtreecommitdiff
path: root/msd/03_msdwave.pd
blob: 8e196ce7a5a1ac1f108d48c2ebc35211c26a2f50 (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
#N canvas 360 104 602 232 10;
#X obj 29 20 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X text 49 19 Reset;
#X obj 202 27 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#N canvas 0 22 981 585 structure_creation 0;
#X msg 681 243 mass filet 1 100 0;
#X msg 663 64 reset;
#X obj 690 527 s msdin;
#X obj 418 25 t b b b b b b b b b b b b;
#X obj 681 201 until;
#X msg 681 170 400;
#X msg 561 378 link fil \$1 \$2 10 1;
#X msg 561 174 380;
#X obj 561 206 until;
#X obj 561 245 f 0;
#X obj 609 261 + 1;
#X msg 618 226 0;
#X obj 636 312 + 20;
#X obj 561 339 pack f f;
#X obj 561 288 t f f;
#X msg 397 151 400;
#X obj 397 189 until;
#X obj 397 231 f 0;
#X obj 445 247 + 1;
#X msg 454 212 0;
#X obj 397 292 t f f;
#X obj 452 325 mod 20;
#X obj 452 355 != 19;
#X obj 397 393 spigot;
#X obj 397 475 pack f f;
#X obj 397 424 t f f;
#X obj 472 448 + 1;
#X msg 397 505 link fil \$1 \$2 10 1;
#X msg 403 107 setFixed 0 \, setFixed 19 \, setFixed 380 \, setFixed
399;
#X obj 418 -8 inlet;
#X obj 326 61 loadbang;
#X connect 0 0 2 0;
#X connect 1 0 2 0;
#X connect 3 5 28 0;
#X connect 3 6 15 0;
#X connect 3 7 19 0;
#X connect 3 8 7 0;
#X connect 3 9 11 0;
#X connect 3 10 5 0;
#X connect 3 11 1 0;
#X connect 4 0 0 0;
#X connect 5 0 4 0;
#X connect 6 0 2 0;
#X connect 7 0 8 0;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 9 0 14 0;
#X connect 10 0 9 1;
#X connect 11 0 9 1;
#X connect 12 0 13 1;
#X connect 13 0 6 0;
#X connect 14 0 13 0;
#X connect 14 1 12 0;
#X connect 15 0 16 0;
#X connect 16 0 17 0;
#X connect 17 0 18 0;
#X connect 17 0 20 0;
#X connect 18 0 17 1;
#X connect 19 0 17 1;
#X connect 20 0 23 0;
#X connect 20 1 21 0;
#X connect 21 0 22 0;
#X connect 22 0 23 1;
#X connect 23 0 25 0;
#X connect 24 0 27 0;
#X connect 25 0 24 0;
#X connect 25 1 26 0;
#X connect 26 0 24 1;
#X connect 27 0 2 0;
#X connect 28 0 2 0;
#X connect 29 0 3 0;
#X connect 30 0 3 0;
#X restore 29 39 pd structure_creation;
#N canvas 813 63 450 300 gem 0;
#X obj 114 171 gemwin;
#X msg 134 149 0 \, destroy;
#X msg 114 125 reset \, create \, 1 \, lighting 1;
#X obj 114 71 inlet;
#X obj 114 97 sel 1 0;
#X connect 1 0 0 0;
#X connect 2 0 0 0;
#X connect 3 0 4 0;
#X connect 4 0 2 0;
#X connect 4 1 1 0;
#X restore 30 85 pd gem;
#X obj 30 63 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0 1
;
#X text 200 -6 send forces;
#X text 200 7 on a row;
#N canvas 0 22 450 300 damping 0;
#X msg 151 90 setD fil \$1;
#X obj 151 113 s msdin;
#X obj 151 70 / 8;
#X obj 151 47 inlet;
#X connect 0 0 1 0;
#X connect 2 0 0 0;
#X connect 3 0 2 0;
#X restore 301 119 pd damping;
#X obj 304 100 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X text 300 79 change viscosity;
#N canvas 0 22 450 300 row 0;
#X msg 149 87 20;
#X obj 149 132 f 6;
#X obj 149 112 until;
#X obj 192 133 + 20;
#X msg 208 113 6;
#X obj 149 63 t b b;
#X msg 149 153 forceX \$1 30;
#X obj 149 183 s msdin;
#X obj 149 38 inlet;
#X connect 0 0 2 0;
#X connect 1 0 3 0;
#X connect 1 0 6 0;
#X connect 2 0 1 0;
#X connect 3 0 1 1;
#X connect 4 0 1 1;
#X connect 5 0 0 0;
#X connect 5 1 4 0;
#X connect 6 0 7 0;
#X connect 8 0 5 0;
#X restore 202 51 pd row;
#X obj 201 105 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X text 199 70 send forces;
#X text 50 63 Gem on/off;
#X obj 305 38 hsl 128 15 0 127 0 0 empty empty empty -2 -8 0 10 -262144
-1 -1 0 1;
#X text 300 17 change rigidity;
#N canvas 0 22 450 300 rigi 0;
#X obj 151 113 s msdin;
#X obj 151 47 inlet;
#X obj 151 70 / 4;
#X msg 151 90 setK fil \$1;
#X connect 1 0 2 0;
#X connect 2 0 3 0;
#X connect 3 0 0 0;
#X restore 302 57 pd rigi;
#X text 199 83 on a point;
#N canvas 0 22 450 300 point 0;
#X obj 192 156 s msdin;
#X msg 192 123 forceX 10 100;
#X obj 193 95 inlet;
#X connect 1 0 0 0;
#X connect 2 0 1 0;
#X restore 201 126 pd point;
#X text 469 -9 move a corner;
#N canvas 0 22 450 300 corner 0;
#X msg 222 89 posX 0 \$1;
#X obj 222 65 / 30;
#X obj 222 115 s msdin;
#X obj 223 32 inlet;
#X connect 0 0 2 0;
#X connect 1 0 0 0;
#X connect 3 0 1 0;
#X restore 471 155 pd corner;
#X obj 471 17 vsl 15 128 0 127 0 0 empty empty empty 0 -9 0 10 -262144
-1 -1 0 1;
#N canvas 696 124 709 588 compute 0;
#X obj 301 215 print msd;
#X obj 141 153 r msdin;
#X msg 126 130 bang \, get massesPos;
#X obj 126 27 gemhead;
#X obj 126 224 route massesPos;
#X obj 34 306 gemhead;
#X msg 34 268 0;
#X obj 126 290 unpack f f;
#X obj 34 539 translateXYZ;
#X obj 126 334 mod 20;
#X obj 126 389 - 3;
#X obj 126 363 * 0.3;
#X obj 126 257 t b a;
#X obj 197 326 / 20;
#X obj 197 356 int;
#X obj 197 383 * -0.3;
#X obj 197 410 + 3;
#X obj 34 238 loadbang;
#X obj 126 184 msd --------------;
#X obj 439 286 gemhead;
#X obj 439 349 light;
#X obj 439 318 translateXYZ 0 0 1;
#X obj 33 572 cube 0.08;
#X obj 126 58 t b b;
#X msg 171 97 bang \, bang \, bang \, bang \, bang \, bang \, bang
;
#X obj 34 443 translateXYZ 0 0 -2;
#X obj 34 477 rotateXYZ 0 20 0;
#X connect 1 0 18 0;
#X connect 2 0 18 0;
#X connect 3 0 23 0;
#X connect 4 0 12 0;
#X connect 5 0 25 0;
#X connect 6 0 5 0;
#X connect 7 0 9 0;
#X connect 7 0 13 0;
#X connect 7 1 8 3;
#X connect 8 0 22 0;
#X connect 9 0 11 0;
#X connect 10 0 8 1;
#X connect 11 0 10 0;
#X connect 12 0 5 0;
#X connect 12 1 7 0;
#X connect 13 0 14 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 8 2;
#X connect 17 0 6 0;
#X connect 18 0 4 0;
#X connect 18 1 0 0;
#X connect 19 0 21 0;
#X connect 21 0 20 0;
#X connect 23 0 2 0;
#X connect 23 1 24 0;
#X connect 24 0 18 0;
#X connect 25 0 26 0;
#X connect 26 0 8 0;
#X restore 30 109 pd compute;
#X connect 0 0 3 0;
#X connect 2 0 11 0;
#X connect 5 0 4 0;
#X connect 9 0 8 0;
#X connect 12 0 19 0;
#X connect 15 0 17 0;
#X connect 22 0 21 0;