aboutsummaryrefslogtreecommitdiff
path: root/examples/64_distordable_object.pd
diff options
context:
space:
mode:
Diffstat (limited to 'examples/64_distordable_object.pd')
-rw-r--r--examples/64_distordable_object.pd326
1 files changed, 326 insertions, 0 deletions
diff --git a/examples/64_distordable_object.pd b/examples/64_distordable_object.pd
new file mode 100644
index 0000000..09a0395
--- /dev/null
+++ b/examples/64_distordable_object.pd
@@ -0,0 +1,326 @@
+#N canvas 358 434 669 579 10;
+#X declare -lib Gem;
+#X obj 52 300 pmpd2d;
+#X obj 52 78 loadbang;
+#X obj 64 101 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#N canvas 293 344 1137 609 creation 0;
+#X obj 256 -12 inlet;
+#X obj 266 16 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
+-1;
+#X obj 257 49 t b b b b b b b b b b b;
+#X msg 824 175 reset;
+#X obj 504 540 outlet;
+#X obj 637 147 until;
+#X obj 637 179 f;
+#X obj 709 231 + 1;
+#X msg 679 147 0;
+#X obj 637 305 pack f f;
+#X msg 637 330 mass net 1 1 \$1 \$2;
+#X msg 746 512 print;
+#X obj 672 257 % 20;
+#X obj 637 258 / 20;
+#X obj 637 279 i;
+#X obj 637 226 t f f f f;
+#X obj 448 339 until;
+#X obj 448 371 f;
+#X obj 520 423 + 1;
+#X obj 448 418 t f f f f;
+#X obj 449 448 + 1, f 4;
+#X obj 447 476 pack f f;
+#X msg 448 317 19;
+#X obj 463 179 until;
+#X obj 463 211 f;
+#X msg 505 179 0;
+#X obj 524 242 + 1;
+#X obj 488 313 * 20;
+#X msg 463 157 20;
+#X msg 637 125 400;
+#X obj 314 297 until;
+#X obj 314 329 f;
+#X obj 386 381 + 1;
+#X obj 314 376 t f f f f;
+#X obj 313 434 pack f f;
+#X obj 329 137 until;
+#X obj 329 169 f;
+#X msg 371 137 0;
+#X obj 406 212 + 1;
+#X obj 354 271 * 20;
+#X msg 314 275 20;
+#X msg 329 115 19;
+#X obj 315 406 + 20;
+#X obj 148 299 until;
+#X obj 148 331 f;
+#X obj 220 383 + 1;
+#X obj 148 378 t f f f f;
+#X obj 147 436 pack f f;
+#X obj 163 139 until;
+#X obj 163 171 f;
+#X msg 205 139 0;
+#X obj 248 219 + 1;
+#X obj 188 273 * 20;
+#X msg 163 117 19;
+#X msg 148 277 19;
+#X obj 149 408 + 21;
+#X obj 0 290 until;
+#X obj 0 322 f;
+#X obj 72 374 + 1;
+#X obj 0 369 t f f f f;
+#X obj -1 427 pack f f;
+#X obj 15 130 until;
+#X obj 15 162 f;
+#X msg 57 130 0;
+#X obj 73 213 + 1;
+#X obj 40 264 * 20;
+#X msg 15 108 19;
+#X msg 0 268 19;
+#X obj 56 407 + 1;
+#X obj 14 237 t b f f;
+#X obj 162 246 t b f f;
+#X obj 328 244 t b f f;
+#X obj 462 286 t b f f;
+#X obj 2 399 + 20;
+#X msg 846 276 min -9 -9 \, max 29 29;
+#X msg 1 455 link link \$1 \$2 0.03 0.1;
+#X msg 152 463 link link \$1 \$2 0.03 0.1;
+#X msg 316 462 link link \$1 \$2 0.03 0.1;
+#X msg 448 501 link link \$1 \$2 0.03 0.1;
+#X connect 0 0 2 0;
+#X connect 1 0 2 0;
+#X connect 2 2 74 0;
+#X connect 2 4 66 0;
+#X connect 2 6 53 0;
+#X connect 2 7 41 0;
+#X connect 2 8 28 0;
+#X connect 2 9 29 0;
+#X connect 2 10 3 0;
+#X connect 2 10 8 0;
+#X connect 2 10 25 0;
+#X connect 2 10 37 0;
+#X connect 2 10 50 0;
+#X connect 2 10 63 0;
+#X connect 3 0 4 0;
+#X connect 5 0 6 0;
+#X connect 6 0 15 0;
+#X connect 7 0 6 1;
+#X connect 8 0 6 1;
+#X connect 9 0 10 0;
+#X connect 10 0 4 0;
+#X connect 11 0 4 0;
+#X connect 12 0 9 1;
+#X connect 13 0 14 0;
+#X connect 14 0 9 0;
+#X connect 15 0 13 0;
+#X connect 15 1 12 0;
+#X connect 15 2 7 0;
+#X connect 16 0 17 0;
+#X connect 17 0 19 0;
+#X connect 18 0 17 1;
+#X connect 19 0 20 0;
+#X connect 19 1 21 1;
+#X connect 19 2 18 0;
+#X connect 20 0 21 0;
+#X connect 21 0 78 0;
+#X connect 22 0 16 0;
+#X connect 23 0 24 0;
+#X connect 24 0 72 0;
+#X connect 25 0 24 1;
+#X connect 26 0 24 1;
+#X connect 27 0 17 1;
+#X connect 28 0 23 0;
+#X connect 29 0 5 0;
+#X connect 30 0 31 0;
+#X connect 31 0 33 0;
+#X connect 32 0 31 1;
+#X connect 33 0 42 0;
+#X connect 33 1 34 1;
+#X connect 33 2 32 0;
+#X connect 34 0 77 0;
+#X connect 35 0 36 0;
+#X connect 36 0 71 0;
+#X connect 37 0 36 1;
+#X connect 38 0 36 1;
+#X connect 39 0 31 1;
+#X connect 40 0 30 0;
+#X connect 41 0 35 0;
+#X connect 42 0 34 0;
+#X connect 43 0 44 0;
+#X connect 44 0 46 0;
+#X connect 45 0 44 1;
+#X connect 46 0 55 0;
+#X connect 46 1 47 1;
+#X connect 46 2 45 0;
+#X connect 47 0 76 0;
+#X connect 48 0 49 0;
+#X connect 49 0 70 0;
+#X connect 50 0 49 1;
+#X connect 51 0 49 1;
+#X connect 52 0 44 1;
+#X connect 53 0 48 0;
+#X connect 54 0 43 0;
+#X connect 55 0 47 0;
+#X connect 56 0 57 0;
+#X connect 57 0 59 0;
+#X connect 58 0 57 1;
+#X connect 59 0 73 0;
+#X connect 59 1 68 0;
+#X connect 59 2 58 0;
+#X connect 60 0 75 0;
+#X connect 61 0 62 0;
+#X connect 62 0 69 0;
+#X connect 63 0 62 1;
+#X connect 64 0 62 1;
+#X connect 65 0 57 1;
+#X connect 66 0 61 0;
+#X connect 67 0 56 0;
+#X connect 68 0 60 1;
+#X connect 69 0 67 0;
+#X connect 69 1 65 0;
+#X connect 69 2 64 0;
+#X connect 70 0 54 0;
+#X connect 70 1 52 0;
+#X connect 70 2 51 0;
+#X connect 71 0 40 0;
+#X connect 71 1 39 0;
+#X connect 71 2 38 0;
+#X connect 72 0 22 0;
+#X connect 72 1 27 0;
+#X connect 72 2 26 0;
+#X connect 73 0 60 0;
+#X connect 74 0 4 0;
+#X connect 75 0 4 0;
+#X connect 76 0 4 0;
+#X connect 77 0 4 0;
+#X connect 78 0 4 0;
+#X restore 52 126 pd creation;
+#X obj 56 -19 declare -lib Gem;
+#X obj 69 224 gemhead;
+#X obj 69 247 t b;
+#X obj 54 45 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 1 1
+;
+#N canvas 1324 493 591 562 linkrender 0;
+#X obj 150 9 inlet;
+#X obj 67 285 separator;
+#X obj 150 148 t b f;
+#X obj 67 368 curve 2;
+#X obj 177 178 pack f f;
+#X msg 177 201 \$1 \$2 0;
+#X obj 261 177 pack f f;
+#X msg 261 200 \$1 \$2 0;
+#X obj 146 97 unpack f f f f f;
+#X obj 67 224 gemhead 45;
+#X obj 67 116 loadbang;
+#X msg 67 174 0;
+#X msg 77 337 res 2;
+#X obj 77 311 loadbang;
+#X obj 145 53 route link;
+#X obj 68 265 translateXYZ -10 -10 0;
+#X obj 69 246 scaleXYZ 0.2 0.2 0.2;
+#X connect 0 0 14 0;
+#X connect 1 0 3 0;
+#X connect 2 0 9 0;
+#X connect 2 1 4 0;
+#X connect 4 0 5 0;
+#X connect 5 0 3 1;
+#X connect 6 0 7 0;
+#X connect 7 0 3 2;
+#X connect 8 1 2 0;
+#X connect 8 2 4 1;
+#X connect 8 3 6 0;
+#X connect 8 4 6 1;
+#X connect 9 0 16 0;
+#X connect 10 0 11 0;
+#X connect 11 0 9 0;
+#X connect 12 0 3 0;
+#X connect 13 0 12 0;
+#X connect 14 0 8 0;
+#X connect 15 0 1 0;
+#X connect 16 0 15 0;
+#X restore 52 345 pd linkrender;
+#N canvas 714 698 763 327 create_gem 0;
+#X msg 137 179 0 \, destroy;
+#X obj 118 104 inlet;
+#X obj 118 129 sel 1 0;
+#X msg 118 156 reset \, create \, 1;
+#X obj 118 200 gemwin 50;
+#X connect 0 0 4 0;
+#X connect 1 0 2 0;
+#X connect 2 0 3 0;
+#X connect 2 1 0 0;
+#X connect 3 0 4 0;
+#X restore 75 45 pd create_gem;
+#X obj 239 119 pack f f;
+#X obj 239 143 spigot 0;
+#X obj 255 31 gemmouse 40 -40;
+#X obj 239 97 - 10;
+#X obj 281 98 + 30;
+#X obj 240 73 f;
+#X obj 207 -13 gemhead;
+#X obj 207 10 t b;
+#X obj 207 53 until;
+#X msg 69 268 linkEnd link;
+#X obj 52 323 route linkEnd testLink;
+#X msg 151 366 setInactive \$1 \, setLinkId \$1 broken;
+#X obj 480 70 gemhead 45;
+#X obj 480 113 translateXYZ -10 -10 0;
+#X obj 480 92 scaleXYZ 0.2 0.2 0.2;
+#X obj 503 -1 gemmouse 40 -40;
+#X obj 503 34 - 10;
+#X obj 536 34 + 30;
+#X obj 480 134 translateXYZ;
+#X obj 480 155 circle 2;
+#X obj 151 345 route break plastic;
+#X msg 207 197 bang \, forceY net -1e-05 \,;
+#X msg 450 38 0;
+#X obj 451 14 loadbang;
+#X msg 239 169 iCircle net \$1 \$2 1 -0.1 1 0 0 0 1;
+#X text 62 452 click and drag the mouse cursor over the object : you
+can interact with it. if force in the links are to importantes \, the
+connection lenght will change (plastic deformation). if forces are
+to importante \, they will break.;
+#X msg 207 32 20;
+#X msg 185 225 testLink break Id link forceSup 0.03 \, testLink plastic
+Id link forceSup 0.002;
+#X msg 206 396 setLCurrent link 0.0001;
+#X connect 0 0 20 0;
+#X connect 1 0 3 0;
+#X connect 2 0 3 0;
+#X connect 3 0 0 0;
+#X connect 5 0 6 0;
+#X connect 6 0 19 0;
+#X connect 7 0 9 0;
+#X connect 10 0 11 0;
+#X connect 11 0 34 0;
+#X connect 12 0 15 1;
+#X connect 12 1 14 0;
+#X connect 12 2 11 1;
+#X connect 13 0 10 0;
+#X connect 14 0 10 1;
+#X connect 15 0 13 0;
+#X connect 16 0 17 0;
+#X connect 17 0 36 0;
+#X connect 18 0 31 0;
+#X connect 18 0 15 0;
+#X connect 18 0 37 0;
+#X connect 19 0 0 0;
+#X connect 20 0 8 0;
+#X connect 20 1 30 0;
+#X connect 21 0 0 0;
+#X connect 22 0 24 0;
+#X connect 23 0 28 0;
+#X connect 24 0 23 0;
+#X connect 25 0 26 0;
+#X connect 25 1 27 0;
+#X connect 25 2 22 0;
+#X connect 26 0 28 1;
+#X connect 27 0 28 2;
+#X connect 28 0 29 0;
+#X connect 30 0 21 0;
+#X connect 30 1 38 0;
+#X connect 31 0 0 0;
+#X connect 32 0 22 0;
+#X connect 33 0 32 0;
+#X connect 34 0 0 0;
+#X connect 36 0 18 0;
+#X connect 37 0 0 0;
+#X connect 38 0 0 0;