#N canvas 675 137 653 522 10; #X declare -lib Gem; #X obj 27 26 loadbang; #X obj 263 104 gemwin; #X msg 278 81 0 \, destroy; #X text 260 26 2 DRAG THE STRUCTURE WITH THE MOUSE; #X obj 87 27 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X msg 90 76 reset; #X obj 27 47 t b b b b b; #X msg 42 186 Xmax 100 \, Xmin 0 \, Ymax 100 \, Ymin 0; #X obj 53 300 gemhead; #X obj 53 323 t b; #X msg 53 345 bang \, get massesPos \, get linksPos; #N canvas 643 123 308 285 massrender 0; #X obj 127 22 inlet; #X obj 48 203 translateXYZ; #X obj 127 86 / 12.5; #X obj 127 109 - 4; #X obj 192 87 / 12.5; #X obj 192 110 - 4; #X obj 48 177 separator; #X obj 125 136 t b f; #X obj 48 141 gemhead 45; #X msg 48 104 0; #X obj 47 58 loadbang; #X obj 127 57 unpack f f f f; #X obj 238 88 / 12.5; #X obj 238 111 - 4; #X obj 48 229 sphere 0.1; #X connect 0 0 11 0; #X connect 1 0 14 0; #X connect 2 0 3 0; #X connect 3 0 7 0; #X connect 4 0 5 0; #X connect 5 0 1 2; #X connect 6 0 1 0; #X connect 7 0 8 0; #X connect 7 1 1 1; #X connect 8 0 6 0; #X connect 9 0 8 0; #X connect 10 0 9 0; #X connect 11 1 2 0; #X connect 11 2 4 0; #X connect 11 3 12 0; #X connect 12 0 13 0; #X connect 13 0 1 3; #X restore 436 267 pd massrender; #N canvas 731 296 458 308 gemmouse 0; #X obj 189 77 gemmouse; #X obj 189 184 pack f f; #X obj 189 218 spigot; #X obj 103 244 outlet; #X obj 189 131 - 0; #X obj 216 131 + 100; #X obj 189 108 / 5; #X obj 216 108 / -5; #X obj 79 51 inlet; #X obj 109 98 t b; #X obj 141 120 list; #X obj 141 41 r mouse_init; #X connect 0 0 6 0; #X connect 0 1 7 0; #X connect 0 2 2 1; #X connect 1 0 2 0; #X connect 2 0 10 1; #X connect 4 0 1 0; #X connect 5 0 1 1; #X connect 6 0 4 0; #X connect 7 0 5 0; #X connect 8 0 9 0; #X connect 9 0 10 0; #X connect 10 0 3 0; #X connect 11 0 10 1; #X restore 366 356 pd gemmouse; #X obj 366 335 gemhead; #X msg 366 377 posX fix \$1; #X msg 366 398 posY fix \$2; #N canvas 0 22 454 304 linkrender 0; #X obj 127 22 inlet; #X obj 128 86 / 12.5; #X obj 128 109 - 4; #X obj 183 87 / 12.5; #X obj 183 110 - 4; #X obj 48 177 separator; #X obj 128 136 t b f; #X obj 262 88 / 12.5; #X obj 262 111 - 4; #X obj 290 112 / 12.5; #X obj 290 135 - 4; #X obj 48 222 curve 2; #X obj 155 189 pack f f 0; #X obj 262 192 pack f f 0; #X obj 48 130 gemhead 45; #X obj 47 44 loadbang; #X msg 47 68 0; #X obj 127 57 unpack f f f f f f f; #X obj 212 112 / 12.5; #X obj 212 135 - 4; #X obj 319 135 / 12.5; #X obj 319 158 - 4; #X connect 0 0 17 0; #X connect 1 0 2 0; #X connect 2 0 6 0; #X connect 3 0 4 0; #X connect 4 0 12 1; #X connect 5 0 11 0; #X connect 6 0 14 0; #X connect 6 1 12 0; #X connect 7 0 8 0; #X connect 8 0 13 0; #X connect 9 0 10 0; #X connect 10 0 13 1; #X connect 12 0 11 1; #X connect 13 0 11 2; #X connect 14 0 5 0; #X connect 15 0 16 0; #X connect 16 0 14 0; #X connect 17 1 1 0; #X connect 17 2 3 0; #X connect 17 3 18 0; #X connect 17 4 7 0; #X connect 17 5 9 0; #X connect 17 6 20 0; #X connect 18 0 19 0; #X connect 19 0 12 2; #X connect 20 0 21 0; #X connect 21 0 13 2; #X restore 366 289 pd linkrender; #X msg 206 139 50 50; #X msg 58 118 40 60 \, 60 60 \, 60 40 \, 40 40; #X obj 206 162 s mouse_init; #X msg 27 207 link souple mob mob 10 5; #X msg 27 230 link souple fix mob 10 5; #X text 25 1 creation : 5 masses and 20 links; #X text 52 281 compute and get masses and links positions; #X text 364 315 move mass to mouse position; #X text 365 197 display masses with gem; #X text 261 6 1 CREATE WINDOW; #X text 108 26 reset struct; #X obj 90 259 s \$0-pmpdin; #X obj 84 373 r \$0-pmpdin; #X obj 52 419 s \$0-pmpdout; #X obj 365 423 s \$0-pmpdin; #X obj 366 218 r \$0-pmpdout; #X msg 74 96 mass fix 0 100 50 50 50; #X msg 58 139 mass mob 1 100 \$1 \$2 50; #X obj 368 177 s \$0-pmpdin; #X msg 369 129 forceZ mob 200; #X msg 368 153 forceZ mob 200; #X text 367 108 send vertical forces; #X msg 263 58 reset \, create \, lighting 1 \, 1; #X obj 51 454 gemhead; #X obj 51 476 world_light; #X obj 53 397 pmpd3d; #X obj 366 244 route linksPosNo massesPos; #X text 190 476 copyright Nicolas Montgermont 2010; #X obj 491 55 declare -lib Gem; #X connect 0 0 6 0; #X connect 2 0 1 0; #X connect 4 0 6 0; #X connect 5 0 28 0; #X connect 6 0 20 0; #X connect 6 1 17 0; #X connect 6 1 7 0; #X connect 6 2 18 0; #X connect 6 3 33 0; #X connect 6 4 5 0; #X connect 7 0 28 0; #X connect 8 0 9 0; #X connect 9 0 10 0; #X connect 10 0 42 0; #X connect 12 0 14 0; #X connect 12 0 15 0; #X connect 13 0 12 0; #X connect 14 0 31 0; #X connect 15 0 31 0; #X connect 17 0 19 0; #X connect 18 0 34 0; #X connect 20 0 21 0; #X connect 20 0 28 0; #X connect 21 0 28 0; #X connect 29 0 42 0; #X connect 32 0 43 0; #X connect 33 0 28 0; #X connect 34 0 28 0; #X connect 36 0 35 0; #X connect 37 0 35 0; #X connect 39 0 1 0; #X connect 40 0 41 0; #X connect 42 0 30 0; #X connect 43 0 16 0; #X connect 43 1 11 0;