From 82362ad6efa5ab5451903f17cc724b5817d6e468 Mon Sep 17 00:00:00 2001 From: "N.N." Date: Thu, 27 Mar 2008 23:25:08 +0000 Subject: svn path=/trunk/externals/nusmuk/; revision=9632 --- msd/03_msdwave.pd | 372 +++++++++++++++++++++++++++++++++--------------------- 1 file changed, 226 insertions(+), 146 deletions(-) (limited to 'msd/03_msdwave.pd') diff --git a/msd/03_msdwave.pd b/msd/03_msdwave.pd index 2a44109..8e196ce 100644 --- a/msd/03_msdwave.pd +++ b/msd/03_msdwave.pd @@ -1,152 +1,232 @@ -#N canvas 820 22 951 769 10; -#X obj 32 13 loadbang; -#X obj 603 265 gemwin; -#X msg 603 243 0 \, destroy; -#X obj 602 291 gemhead; -#X obj 602 355 world_light; -#X obj 145 226 t a; -#X obj 145 12 bng 20 250 50 0 empty empty empty 0 -6 0 8 -262131 -1 +#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 msg 203 63 reset; -#X obj 33 298 gemhead; -#N canvas 721 124 609 594 massrender 0; -#X obj 127 22 inlet; -#X obj 48 203 translateXYZ; -#X obj 48 177 separator; -#X obj 127 136 t b f; -#X obj 127 57 unpack f f f; -#X obj 48 154 gemhead 45; -#X obj 48 283 cuboid 0.005 0.15 0.08; -#X obj 48 239 color 0.8 0.8 0.8; -#X obj 48 90 loadbang; -#X msg 48 118 0; -#X connect 0 0 4 0; -#X connect 1 0 7 0; -#X connect 2 0 1 0; -#X connect 3 0 5 0; -#X connect 3 1 1 1; -#X connect 4 0 3 0; -#X connect 4 1 1 2; -#X connect 4 2 6 3; -#X connect 5 0 2 0; -#X connect 7 0 6 0; +#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 5 0; -#X restore 274 531 pd massrender; -#X msg 203 83 symbol reset; -#X text 793 205 Select view; -#X obj 145 38 t b b b b; -#X obj 63 403 msd -------------; -#X obj 425 423 msd2D --------------------------------; -#X obj 305 254 route mass; -#X msg 305 275 mass msd1 \$1 \$2 \$5; -#X obj 145 253 route mass; -#X msg 145 274 mass msd2 \$1 \$2 \$3 \$4; -#X obj 425 443 route massesPos; -#X msg 33 343 bang \, get massesPos; -#X obj 33 321 t b b; -#X obj 274 506 pack f f f; -#X obj 63 427 route massesPosNo; -#X msg 421 523 get massesPos \$1; -#X obj 602 334 rotateXYZ; -#X obj 56 547 vsl 15 128 0 4 0 0 empty empty empty 0 -8 0 8 -262131 --1 -1 6200 1; -#X obj 75 547 vsl 15 128 0 4 0 0 empty empty empty 0 -8 0 8 -262131 --1 -1 6500 1; -#X obj 94 547 vsl 15 128 0 4 0 0 empty empty empty 0 -8 0 8 -262131 --1 -1 7600 1; -#X obj 112 547 vsl 15 128 0 4 0 0 empty empty empty 0 -8 0 8 -262131 --1 -1 6800 1; -#X msg 56 682 posX 0 \$1; -#X msg 603 138 reset \, dimen 800 800 \, create \, lighting 1 \, 1 -; -#X msg 145 173 Xmax 4 \, Xmin -4 \, Ymax 4 \, Ymin -4; -#X msg 145 199 Xmax 4 \, Xmin -4; -#X obj 603 161 t b; -#X msg 164 140 setFixed 0 \, setFixed 39 \, setFixed 760 \, setFixed -799; -#X msg 603 204 view 0 5 0 0 0 0 0 0 1; -#X msg 75 702 posX 39 \$1; -#X msg 94 722 posX 799 \$1; -#X msg 112 742 posX 760 \$1; -#X text 28 514 Move corners to send a wave!; -#X text 327 559 Each time a mass2D position is send \, the corresponding -z is asked to the 1D model.; -#X text 389 35 X-Y : 2D model; -#X text 389 49 Z : 1D model; -#X text 146 300 If it's a mass message : send XY to ms2D and Z to msd +#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 178 14 Reset; -#X text 304 228 800 masses / 1540 links for each model; -#X text 423 381 The 2D model is just here to help display masses and -test synchronization between msd objects; -#X obj 425 463 unpack f f f; -#X obj 91 462 unpack f f; -#X obj 481 502 f; -#X obj 425 485 t b f; -#X text 453 114 Filet abstraction : x0 y0 stepx stepy ny nx M; -#X msg 603 223 view 5 -1 0.5 0 0 0 0 0 1; -#X msg 621 311 45; -#X msg 650 311 45; -#X msg 603 185 view 0 0.5 6 0 0 0 0 1 0; -#X obj 183 113 filet -3.2 -3 0.1685 0.3 20 40 100; -#X connect 0 0 12 0; +#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 connect 3 0 25 0; -#X connect 5 0 15 0; -#X connect 5 0 17 0; -#X connect 6 0 12 0; -#X connect 7 0 5 0; -#X connect 8 0 21 0; -#X connect 10 0 57 1; -#X connect 12 0 32 0; -#X connect 12 0 33 0; -#X connect 12 1 35 0; -#X connect 12 2 57 0; -#X connect 12 3 7 0; -#X connect 12 3 10 0; -#X connect 13 0 23 0; -#X connect 14 0 19 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 15 1 13 0; -#X connect 16 0 13 0; -#X connect 17 0 18 0; -#X connect 17 1 14 0; -#X connect 18 0 14 0; -#X connect 19 0 48 0; -#X connect 20 0 14 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 21 1 13 0; -#X connect 22 0 9 0; -#X connect 23 0 49 0; -#X connect 24 0 13 0; -#X connect 25 0 4 0; -#X connect 26 0 30 0; -#X connect 27 0 37 0; -#X connect 28 0 38 0; -#X connect 29 0 39 0; -#X connect 30 0 13 0; -#X connect 31 0 1 0; -#X connect 31 0 34 0; -#X connect 32 0 14 0; -#X connect 33 0 13 0; -#X connect 34 0 56 0; -#X connect 34 0 55 0; -#X connect 34 0 54 0; -#X connect 35 0 5 0; -#X connect 36 0 1 0; -#X connect 37 0 13 0; -#X connect 38 0 13 0; -#X connect 39 0 13 0; -#X connect 48 0 51 0; -#X connect 48 1 50 1; -#X connect 48 2 22 1; -#X connect 49 1 22 2; -#X connect 50 0 22 0; -#X connect 51 0 50 0; -#X connect 51 1 24 0; -#X connect 53 0 1 0; -#X connect 54 0 25 1; -#X connect 55 0 25 2; -#X connect 56 0 1 0; -#X connect 57 0 5 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; -- cgit v1.2.1