aboutsummaryrefslogtreecommitdiff
path: root/pmpd-help.pd
diff options
context:
space:
mode:
authorCyrille Henry <nusmuk@users.sourceforge.net>2013-05-09 14:20:01 +0000
committerCyrille Henry <nusmuk@users.sourceforge.net>2013-05-09 14:20:01 +0000
commit32fa9bd1815502bf47bc07e02996a00b2a38d4fb (patch)
tree9f171ed04397234be9c160694f7cf812aa701548 /pmpd-help.pd
parentf4724e3c3965fd72adadb3cefd12cf0b69cb6878 (diff)
help update in order to add all new messages
svn path=/trunk/externals/pmpd/; revision=17126
Diffstat (limited to 'pmpd-help.pd')
-rw-r--r--pmpd-help.pd624
1 files changed, 353 insertions, 271 deletions
diff --git a/pmpd-help.pd b/pmpd-help.pd
index 8dc88d6..3e2c339 100644
--- a/pmpd-help.pd
+++ b/pmpd-help.pd
@@ -1,32 +1,32 @@
-#N canvas 427 32 575 730 10;
+#N canvas 1190 226 566 769 10;
#X obj 4 369 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
0;
-#X obj 5 689 cnv 15 550 40 empty empty empty 20 12 0 14 -158509 -66577
+#X obj 5 709 cnv 15 550 40 empty empty empty 20 12 0 14 -158509 -66577
0;
#X obj 8 6 cnv 15 550 30 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 14 389 cnv 15 75 15 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 14 604 cnv 15 75 15 empty empty empty 20 12 0 14 -233017 -66577
+#X obj 14 624 cnv 15 75 15 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 4 547 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
+#X obj 4 567 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
0;
-#X obj 4 582 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
+#X obj 4 602 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
0;
#X obj 7 76 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
0;
-#X obj 5 639 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
+#X obj 5 659 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
0;
-#X obj 5 659 cnv 15 550 30 empty empty empty 20 12 0 14 -233017 -66577
+#X obj 5 679 cnv 15 550 30 empty empty empty 20 12 0 14 -233017 -66577
0;
#X text 12 76 Examples:;
#X text 9 369 Inlets:;
#X text 19 388 - Left:;
-#X text 10 546 Arguments:;
-#X text 11 582 Outlets:;
-#X text 19 639 See Also:;
+#X text 10 566 Arguments:;
+#X text 11 602 Outlets:;
+#X text 19 659 See Also:;
#X text 74 48 Full Name:;
-#N canvas 58 22 262 70 Related_Objects 0;
+#N canvas 58 50 262 70 Related_Objects 0;
#X obj 3 10 cnv 15 250 15 empty empty empty 20 12 0 14 -158509 -66577
0;
#X obj 3 30 cnv 15 250 30 empty empty empty 20 12 0 14 -233017 -66577
@@ -34,7 +34,7 @@
#X text 5 10 Externals and libraries;
#X obj 44 37 pmpd2d;
#X obj 140 37 pmpd3d;
-#X restore 122 695 pd Related_Objects;
+#X restore 122 715 pd Related_Objects;
#N canvas 541 387 524 302 init 0;
#X msg 89 187 Xmax 127 \, Xmin 0;
#X obj 89 215 t a;
@@ -65,9 +65,9 @@ souple 3 2 1 0.5;
#X obj 17 344 s \$0-out;
#X obj 17 295 r \$0-in;
#X obj 261 184 vsl 15 127 0 127 0 0 empty empty Drag-----> -70 60 1
-10 -262144 -1 -1 3000 1;
+10 -262144 -1 -1 0 1;
#X obj 292 184 vsl 15 127 0 127 0 0 empty empty empty 0 -8 0 8 -262144
--1 -1 3004 1;
+-1 -1 0 1;
#X obj 261 345 s \$0-in;
#X msg 261 322 posX fix \$1;
#N canvas 565 515 355 193 compute 0;
@@ -86,225 +86,127 @@ souple 3 2 1 0.5;
-1 -1;
#X obj 261 131 route massesPosL;
#X obj 311 184 vsl 15 127 0 127 0 0 empty empty empty 0 -8 0 8 -262144
--1 -1 3008 1;
+-1 -1 0 1;
#X obj 330 184 vsl 15 127 0 127 0 0 empty empty empty 0 -8 0 8 -262144
--1 -1 3010 1;
+-1 -1 0 1;
#X obj 261 152 unpack f f f f;
#X text 101 388 Bang - A bang at the left inlet compute the new model
state based on previous instant.;
#X text 188 478 To set the model parameters after creation.;
#X text 188 456 To create the model masses and links.;
#X text 186 512 To get the model parameters;
-#X text 103 562 None;
-#X text 18 603 - Left:;
-#X text 101 604 Outputs the model parameters asked with the attributes
+#X text 103 582 None;
+#X text 18 623 - Left:;
+#X text 101 624 Outputs the model parameters asked with the attributes
messages.;
#X text 101 420 Messages - Different messages are used to control the
msd object. They are of three types :;
-#X text 9 661 CATEGORY: control;
-#X text 9 671 KEYWORDS: physical model mass spring damper link;
-#X text 111 639 01_msdtest.pd;
+#X text 9 681 CATEGORY: control;
+#X text 9 691 KEYWORDS: physical model mass spring damper link;
+#X text 111 659 01_msdtest.pd;
#X obj 157 48 pmpd;
#X text 12 8 HELP: pmpd;
#X text 12 20 DESCRIPTION: physical modeling for pd \, based on msd.
;
#X obj 17 319 pmpd;
-#X text 266 696 - Cyrille Henry \, 2011;
-#X text 283 712 based on MSD by Nicolas Montgermont;
+#X text 266 716 - Cyrille Henry \, 2011;
+#X text 283 732 based on MSD by Nicolas Montgermont;
#X obj 17 187 loadbang;
-#N canvas 446 66 1236 814 links_attributes 0;
+#N canvas 414 430 1213 533 links_attributes 0;
#X obj 5 3 cnv 15 590 15 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 10 108 cnv 15 150 110 empty empty empty 20 12 0 14 -233017 -66577
+#X obj 10 248 cnv 15 150 50 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 4 87 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+#X obj 4 227 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
0;
#X text 7 2 ATTRIBUTES Messages;
-#X text 7 87 Lists :;
-#X obj 11 222 cnv 15 150 110 empty empty empty 20 12 0 14 -233017 -66577
+#X text 7 227 Lists :;
+#X obj 11 302 cnv 15 150 50 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 11 335 cnv 15 150 110 empty empty empty 20 12 0 14 -233017 -66577
+#X obj 11 358 cnv 15 150 50 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 611 26 cnv 15 150 110 empty empty empty 20 12 0 14 -233017 -66577
+#X obj 611 26 cnv 15 150 50 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 605 5 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
0;
-#X obj 612 140 cnv 15 150 110 empty empty empty 20 12 0 14 -233017
--66577 0;
-#X obj 612 253 cnv 15 150 110 empty empty empty 20 12 0 14 -233017
--66577 0;
-#X text 369 530 \$1 (optional): Masses Id;
-#X text 834 500 \$2 (optional): Masses Id;
-#X text 833 487 \$1 : table name;
-#X obj 17 584 cnv 15 150 220 empty empty empty 20 12 0 14 -233017 -66577
-0;
-#X obj 11 564 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
-0;
-#X msg 22 597 massesPosMean;
-#X text 177 613 \$1 : none or Id;
-#X msg 23 629 massesPosStd \$1;
-#X text 179 644 \$1 : none or Id;
-#X text 173 597 output the average position of masses;
-#X text 174 628 output the standard deviation of masses position;
-#X text 177 674 \$1 : none or Id;
-#X text 179 711 \$1 : none or Id;
-#X text 173 658 output the average position of masses;
-#X text 174 695 output the standard deviation of masses position;
-#X text 177 749 \$1 : none or Id;
-#X text 178 786 \$1 : none or Id;
-#X text 173 733 output the average position of masses;
-#X text 173 770 output the standard deviation of masses position;
-#X msg 22 696 massesForcesStd \$1;
-#X msg 22 658 massesForcesMean;
-#X msg 23 735 massesSpeedsMean;
-#X msg 22 771 massesSpeedsStd \$1;
+#X obj 612 80 cnv 15 150 50 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X obj 612 133 cnv 15 150 50 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X text 349 475 \$1 (optional): Masses Id;
+#X text 834 260 \$2 (optional): Masses Id;
+#X text 833 247 \$1 : table name;
#X text 608 5 tables :;
#X text 15 30 The attributes messages ask the object to output some
of his internal parameters. They can be output by lists for positions
and forces of links;
-#X text 14 564 statistics (not implemented yet) :;
-#X msg 11 119 linksPosL (\$1);
-#X text 170 120 Output all links center positions in a list on outlet
+#X text 170 260 Output all links center positions in a list on outlet
No 1;
-#X msg 11 138 linksPosXL (\$1);
-#X msg 13 229 linksLengthL (\$1);
-#X msg 13 248 linksLengthXL (\$1);
-#X obj 12 451 cnv 15 150 110 empty empty empty 20 12 0 14 -233017 -66577
-0;
-#X msg 14 458 linksLengthSpeedL (\$1);
-#X msg 14 477 linksLengthSpeedXL (\$1);
-#X text 184 459 Output all link lenght deformation speed in a list
+#X obj 12 414 cnv 15 150 50 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X text 184 422 Output all link lenght deformation speed in a list
on outlet No 1;
-#X msg 615 38 linksPosT \$1 (\$2);
-#X msg 616 57 linksPosXT \$1 (\$2);
-#X msg 616 152 linksLengthT \$1 (\$2);
-#X obj 612 369 cnv 15 150 110 empty empty empty 20 12 0 14 -233017
--66577 0;
-#X text 808 377 Output all link lenght deformation speed in a list
+#X obj 612 189 cnv 15 150 50 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X text 808 197 Output all link lenght deformation speed in a list
on outlet No 1;
-#X msg 614 376 linksLengthSpeedT \$1 (\$2);
-#X msg 613 395 linksLengthSpeedXT \$1 (\$2);
#X text 793 47 Output all links center positions in a table (\$1);
-#X text 170 233 Output all link lenght in a list on outlet No 1;
-#X text 171 349 Output all link center speed in a list on outlet No
+#X text 170 313 Output all link lenght in a list on outlet No 1;
+#X text 171 372 Output all link center speed in a list on outlet No
1;
-#X text 797 154 Output all link length in a list on outlet No 1;
-#X msg 16 342 linksPosSpeedL (\$1);
-#X msg 16 361 linksPosSpeedXL (\$1);
-#X msg 616 259 linksPosSpeedT \$1 (\$2);
-#X text 795 264 Output all link center speed in a list on outlet No
+#X text 797 94 Output all link length in a list on outlet No 1;
+#X text 795 144 Output all link center speed in a list on outlet No
1;
-#X msg 616 171 linksLengthXT \$1 (\$2);
-#X msg 616 278 linksPosSpeedXT \$1 (\$2);
-#X restore 12 519 pd links_attributes ___;
-#N canvas 50 22 1230 682 attributes__________ 0;
-#X obj 11 95 cnv 15 100 35 empty empty empty 20 12 0 14 -233017 -66577
-0;
-#X obj 5 75 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
-0;
-#X obj 5 3 cnv 15 590 15 empty empty empty 20 12 0 14 -233017 -66577
-0;
-#X obj 10 157 cnv 15 150 95 empty empty empty 20 12 0 14 -233017 -66577
+#X obj 8 95 cnv 15 150 100 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 4 137 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
-0;
-#X obj 12 283 cnv 15 110 380 empty empty empty 20 12 0 14 -233017 -66577
-0;
-#X obj 6 259 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
-0;
-#X text 7 74 General :;
-#X text 7 2 ATTRIBUTES Messages;
-#X text 7 137 Lists :;
-#X text 142 299 Get specific attribute on specific element;
-#X msg 22 297 get \$1 (\$2);
-#X text 9 259 Specific :;
-#X text 142 400 The get message return the asked attribute preceded
-by an identifier and the creation No of the element. The identifier
-is made of the asked parameter and the way you asked for it.;
-#X text 143 476 message;
-#X text 383 476 response;
-#X text 142 457 Examples with 3 masses numbered 0 \, 1 and 2 and named
-mas:;
-#X text 148 566 [get massesPos mas( -----> [massesPosId 0 x0(;
-#X text 176 495 [get massesPos( -----> [massesPos 0 x0(;
-#X text 162 545 [get massesPos 1( -----> [massesPosNo 1 x1(;
-#X text 15 30 The attributes messages ask the object to output some
-of his internal parameters. They can be output by lists for positions
-and forces of masses.;
-#X text 142 367 (\$2) : - If not defined all the attributes are send
-for all the elements. - Ids or/and creations No;
-#X msg 33 104 print;
-#X text 136 104 print infos on all masses and links on right outlet
-;
-#X text 171 170 Output all masses positions in a list on outlet;
-#X text 169 199 Output all forces applied on masses in a list on outlet
+#X text 172 100 \$1 : id float or symbol of masses (nothing for all)
;
-#X text 170 229 Output all speeds of the masses in a list on outlet
+#X text 172 160 \$1 : id float or symbol of masses (nothing for all)
;
-#X text 142 324 \$1 : Attribute type ( massesPos / massesPosName /
-massesSpeeds / massesSpeedsName / massesForces / massesForcesName /
-linksPos / linksPosName );
-#X text 148 615 [get massesPosName( -----> [massesPosName mas x0(;
-#X obj 608 157 cnv 15 150 95 empty empty empty 20 12 0 14 -233017 -66577
-0;
-#X obj 602 137 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
-0;
-#X obj 608 278 cnv 15 150 270 empty empty empty 20 12 0 14 -233017
+#X msg 12 103 linkPos [\$1];
+#X msg 12 163 linkEnd [\$1];
+#X text 173 120 output a message for every links :;
+#X text 173 180 output a message for every links :;
+#X obj 2 76 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 5 76 generic :;
+#X text 202 137 linkPos symbolId number center;
+#X text 172 196 linkEnd symbolId number posX1 posX2;
+#X obj 614 323 cnv 15 150 200 empty empty empty 20 12 0 14 -233017
-66577 0;
-#X obj 602 258 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
-0;
-#X text 605 258 statistics :;
-#X msg 613 291 massesPosMean;
-#X text 768 307 \$1 : none or Id;
-#X text 605 137 Tables :;
-#X msg 614 329 massesPosStd \$1;
-#X text 770 344 \$1 : none or Id;
-#X text 764 291 output the average position of masses;
-#X text 765 328 output the standard deviation of masses position;
-#X text 768 394 \$1 : none or Id;
-#X text 770 431 \$1 : none or Id;
-#X text 764 378 output the average position of masses;
-#X text 765 415 output the standard deviation of masses position;
-#X text 768 479 \$1 : none or Id;
-#X text 769 516 \$1 : none or Id;
-#X text 764 463 output the average position of masses;
-#X text 764 500 output the standard deviation of masses position;
-#X msg 613 416 massesForcesStd \$1;
-#X msg 613 378 massesForcesMean;
-#X msg 614 465 massesSpeedsMean;
-#X msg 613 501 massesSpeedsStd \$1;
-#X msg 610 170 massesPosT \$1 (\$2);
-#X msg 610 198 massesForcesT \$1 (\$2);
-#X msg 611 228 massesSpeedsT \$1 (\$2);
-#X text 770 169 Output all masses positions in a table (\$1 = table
-name \, \$2 (optional): Masses Id);
-#X text 768 198 Output all forces applied on masses in a table (\$1
-= table name \, \$2 (optional): Masses Id);
-#X text 768 229 Output all speeds of the masses in a table (\$1 = table
-name \, \$2 (optional): Masses Id);
-#X msg 16 170 massesPosL (\$1);
-#X msg 16 198 massesForcesL (\$1);
-#X msg 16 228 massesSpeedsL (\$1);
-#X text 170 183 \$1 (optional): Masses Id;
-#X text 170 213 \$1 (optional): Masses Id;
-#X text 171 242 \$1 (optional): Masses Id;
-#X text 337 509 [massesPos 1 x1(;
-#X text 337 523 [massesPos 2 x2(;
-#X text 338 630 [massesPosName mas x1(;
-#X text 339 645 [massesPosName mas x2(;
-#X text 337 581 [massesPosId 1 x1(;
-#X text 337 596 [massesPosId 2 x2(;
-#X obj 607 572 cnv 15 150 95 empty empty empty 20 12 0 14 -233017 -66577
-0;
-#X obj 601 552 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
-0;
-#X text 767 600 output the closest mass;
-#X text 766 614 \$1 : position;
-#X text 604 552 others :;
-#X msg 612 600 closestMass \$1 (\$2);
-#X text 766 629 \$2 : none or Id;
-#X restore 12 499 pd attributes__________;
-#N canvas 141 69 1139 731 dynamic 0;
+#X obj 608 302 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 611 302 tables :;
+#X msg 628 331 linkEndT \$1 [\$2];
+#X text 790 331 Put position of the 2 link end on a table [\$1] \,
+filter on link id is possible;
+#X msg 640 351 linkEnd1T \$1 [\$2];
+#X msg 639 371 linkEnd2T \$1 [\$2];
+#X msg 638 392 linkEndXT \$1 [\$2];
+#X msg 638 411 linkEnd1XT \$1 [\$2];
+#X msg 638 431 linkEnd2XT \$1 [\$2];
+#X msg 639 453 linkEndYT \$1 [\$2];
+#X msg 641 473 linkEnd1YT \$1 [\$2];
+#X msg 640 493 linkEnd2YT \$1 [\$2];
+#X text 795 363 table is posX1 posY1 posX2 posY2 ....;
+#X msg 11 259 linkPosL (\$1);
+#X msg 11 278 linkPosXL (\$1);
+#X msg 13 309 linkLengthL (\$1);
+#X msg 13 328 linkLengthXL (\$1);
+#X msg 16 365 linkPosSpeedL (\$1);
+#X msg 16 384 linkPosSpeedXL (\$1);
+#X msg 14 421 linkLengthSpeedL (\$1);
+#X msg 14 440 linkLengthSpeedXL (\$1);
+#X msg 615 38 linkPosT \$1 (\$2);
+#X msg 616 57 linkPosXT \$1 (\$2);
+#X msg 616 92 linkLengthT \$1 (\$2);
+#X msg 616 111 linkLengthXT \$1 (\$2);
+#X msg 616 139 linkPosSpeedT \$1 (\$2);
+#X msg 616 158 linkPosSpeedXT \$1 (\$2);
+#X msg 614 196 linkLengthSpeedT \$1 (\$2);
+#X msg 613 215 linkLengthSpeedXT \$1 (\$2);
+#X restore 12 519 pd links_attributes ___;
+#N canvas 306 101 1146 821 dynamic 0;
#X obj 5 3 cnv 15 550 15 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 10 85 cnv 15 130 580 empty empty empty 20 12 0 14 -233017 -66577
@@ -318,14 +220,11 @@ name \, \$2 (optional): Masses Id);
#X text 7 62 Masses :;
#X text 571 62 Links :;
#X text 7 2 DYNAMIC SETTINGS Messages;
-#X msg 31 96 posX \$1 \$2;
#X text 190 144 Add force on mass(es);
#X msg 30 152 forceX \$1 \$2;
#X text 192 212 \$1 : Value;
#X text 193 107 \$1 : Id (symbol) or No;
#X text 193 161 \$1 : Id (symbol) or No;
-#X msg 30 195 Xmin \$1;
-#X msg 30 217 Xmax \$1;
#X msg 29 244 setMobile \$1;
#X msg 29 265 setFixed \$1;
#X text 193 89 Set position of fixed mass(es);
@@ -348,43 +247,85 @@ name \, \$2 (optional): Masses Id);
#X text 191 261 \$1 : Id (symbol) or No;
#X text 10 25 Dynamic settings messages allows the user to redefine
internal parameters of links and masses.;
-#X msg 28 286 setDEnv \$1;
-#X text 184 287 Change environement damping;
-#X text 196 304 \$1 : damping;
-#X msg 588 280 setLinkId \$1 \$2;
-#X text 742 281 Change the Id of a link;
-#X text 743 298 \$1 : link (number or Id);
-#X text 746 315 \$2 : New Id;
-#X msg 591 353 setLKTab \$1 \$2;
-#X text 750 353 change the table (K) size of a non linear link;
-#X text 751 373 \$1 : link (number or Id);
-#X text 752 390 \$2 : New KL;
-#X text 751 435 \$1 : link (number or Id);
-#X msg 591 415 setLDTab \$1 \$2;
-#X text 750 415 change the table (D) size of a non linear link;
-#X text 752 452 \$2 : New DL;
-#X text 191 373 \$2 : New Id;
-#X msg 25 339 setMassId \$1 \$2;
-#X text 191 339 Change the Id of a mass;
-#X text 192 356 \$1 : mass (number or Id);
-#X msg 23 400 setForce \$1 \$2;
-#X msg 23 468 setSpeed \$1 \$2;
-#X msg 24 531 addPos \$1 \$2;
-#X text 186 420 \$1 : Id (symbol) or No;
-#X text 186 438 \$2 : Value;
-#X text 183 403 set force on mass(es);
-#X text 185 487 \$1 : Id (symbol) or No;
-#X text 185 505 \$2 : Value;
-#X text 182 470 set speed of a mass(es);
-#X text 184 548 \$1 : Id (symbol) or No;
-#X text 184 566 \$2 : Value;
-#X text 181 531 add pos of a mass(es);
-#X text 183 592 grab a mass \, and move it;
-#X text 185 610 \$1 : position;
-#X text 185 626 \$2 : grab or not (0 or 1);
-#X msg 26 593 grabMass \$1 \$2;
+#X msg 26 610 setDEnv \$1;
+#X text 173 612 Change environement damping;
+#X text 185 629 \$1 : damping;
+#X msg 584 358 setLinkId \$1 \$2;
+#X text 738 359 Change the Id of a link;
+#X text 739 376 \$1 : link (number or Id);
+#X text 742 393 \$2 : New Id;
+#X msg 587 431 setLKTab \$1 \$2;
+#X text 746 431 change the table (K) size of a non linear link;
+#X text 747 451 \$1 : link (number or Id);
+#X text 748 468 \$2 : New KL;
+#X text 747 513 \$1 : link (number or Id);
+#X msg 587 493 setLDTab \$1 \$2;
+#X text 746 493 change the table (D) size of a non linear link;
+#X text 748 530 \$2 : New DL;
+#X text 190 401 \$2 : New Id;
+#X msg 24 367 setMassId \$1 \$2;
+#X text 190 367 Change the Id of a mass;
+#X text 191 384 \$1 : mass (number or Id);
+#X msg 22 428 setForce \$1 \$2;
+#X msg 22 496 setSpeed \$1 \$2;
+#X msg 23 559 addPos \$1 \$2;
+#X text 185 448 \$1 : Id (symbol) or No;
+#X text 185 466 \$2 : Value;
+#X text 182 431 set force on mass(es);
+#X text 184 515 \$1 : Id (symbol) or No;
+#X text 184 533 \$2 : Value;
+#X text 181 498 set speed of a mass(es);
+#X text 183 576 \$1 : Id (symbol) or No;
+#X text 183 594 \$2 : Value;
+#X text 180 559 add pos of a mass(es);
+#X text 185 299 grab a mass \, and move it;
+#X text 187 317 \$1 : position;
+#X text 187 333 \$2 : grab or not (0 or 1);
+#X msg 28 300 grabMass \$1 \$2;
+#X msg 31 96 SetPosX \$1 \$2;
+#X msg 31 116 SetPos \$1 \$2;
+#X msg 30 172 force \$1 \$2;
+#X msg 30 195 minX \$1;
+#X msg 30 217 maxX \$1;
+#X msg 90 195 min \$1;
+#X msg 90 217 max \$1;
+#X text 180 690 \$2 : damping;
+#X text 179 675 \$1 : Id (symbol) or No;
+#X msg 16 659 setDEnvOffset \$1 \$2;
+#X text 168 659 Change environement damping offset;
+#X msg 22 448 setForceX \$1 \$2;
+#X msg 22 516 setSpeedX \$1 \$2;
+#X msg 23 579 addPosX \$1 \$2;
+#X text 721 272 Set initial lenght of link(s);
+#X text 727 290 \$1 : Id (symbol) or No;
+#X msg 581 271 setLCurrent \$1 [\$2];
+#X text 727 308 \$2 : mix between link size (0) and curent length (1)
+;
+#X text 722 326 if no \$2 arg is provide \, then L is set to curent
+length;
+#X text 600 786 if only 1 argument is previded \, message generally
+used this argument as the value applayed to all masses (or link);
+#X text 746 596 \$1 : link (number or Id);
+#X text 745 552 \$1 : link (number or Id);
+#X msg 586 576 setActive \$1 \$2;
+#X msg 585 532 setInactive \$1 \$2;
+#X text 744 532 did not compute a link anymore;
+#X text 745 576 compute the link at each bang;
+#X text 741 663 \$1 : link (number or Id);
+#X msg 586 620 setOverdamp \$1 \$2;
+#X text 741 677 \$2 : overdamp value;
+#X text 740 621 Change the overdamp of a link. i.e a strange parametter
+that amplifie forces that oposed to movment. Use at your own risk.
+;
+#X text 743 724 \$1 : link (number or Id);
+#X msg 588 705 setEnd \$1 \$2 \$3;
+#X text 742 740 \$2 : mass number for end 1;
+#X text 742 707 Change the masses a link is connected to;
+#X text 741 756 \$3 : mass number for end 2;
+#X msg 600 728 setEnd1 \$1 \$2;
+#X msg 600 750 setEnd2 \$1 \$2;
#X restore 12 478 pd dynamic settings ___;
-#N canvas 818 245 561 671 creation____________ 0;
+#N canvas 1072 165 630 814 creation____________ 0;
#X obj 11 95 cnv 15 100 35 empty empty empty 20 12 0 14 -233017 -66577
0;
#X obj 5 75 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
@@ -392,50 +333,52 @@ internal parameters of links and masses.;
#X obj 5 3 cnv 15 550 15 empty empty empty 20 12 0 14 -233017 -66577
0;
#X text 7 2 CREATION Messages;
-#X obj 10 156 cnv 15 150 140 empty empty empty 20 12 0 14 -233017 -66577
+#X obj 10 186 cnv 15 150 140 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 4 137 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
+#X obj 4 167 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
0;
-#X obj 10 332 cnv 15 240 220 empty empty empty 20 12 0 14 -233017 -66577
+#X obj 10 362 cnv 15 240 220 empty empty empty 20 12 0 14 -233017 -66577
0;
-#X obj 3 308 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
+#X obj 3 338 cnv 15 550 15 empty empty empty 20 12 0 14 -158509 -66577
0;
#X msg 32 104 reset;
-#X text 202 167 Add a mass;
-#X text 288 168 \$1 : Id (symbol);
-#X text 287 188 \$2 : fixed or mobile (0/1);
-#X text 287 206 \$3 : mass;
-#X msg 32 167 mass \$1 \$2 \$3 \$4;
-#X text 287 224 \$4 : initial position;
-#X text 7 137 Masses :;
+#X text 202 197 Add a mass;
+#X text 288 198 \$1 : Id (symbol);
+#X text 287 218 \$2 : fixed or mobile (0/1);
+#X text 287 236 \$3 : mass;
+#X msg 32 197 mass \$1 \$2 \$3 \$4;
+#X text 287 254 \$4 : initial position;
+#X text 7 167 Masses :;
#X text 7 74 Reset :;
#X text 129 105 Delete all masses \, links and internal variables;
-#X text 6 308 Links :;
-#X text 271 360 \$1 : Id (symbol);
-#X text 271 360 \$1 : Id (symbol);
-#X text 271 413 \$4 : rigidity;
-#X text 271 378 \$2 : creation No/Id of mass1;
-#X text 271 396 \$3 : creation No/Id of mass2;
-#X text 266 341 Add link(s);
-#X text 271 431 \$5 : damping;
+#X text 6 338 Links :;
+#X text 271 390 \$1 : Id (symbol);
+#X text 271 390 \$1 : Id (symbol);
+#X text 271 443 \$4 : rigidity;
+#X text 271 408 \$2 : creation No/Id of mass1;
+#X text 271 426 \$3 : creation No/Id of mass2;
+#X text 266 371 Add link(s);
+#X text 271 461 \$5 : damping;
#X text 10 28 Creation messages are used to define the structure of
the model. Messages create links and masses or destroy them.;
-#X msg 30 341 link \$1 \$2 \$3 \$4 \$5 (\$6 \$7 \$8);
-#X text 271 449 \$6 : Power of the rigidity distance;
-#X msg 35 519 tabLink \$1 \$2 \$3 \$4 \$5 \$6 \$7;
-#X text 267 468 (\$7) : minimum lenght of link;
-#X text 268 485 (\$8) : maximum lenght of link;
-#X text 266 535 \$1 : Id (symbol);
-#X text 266 535 \$1 : Id (symbol);
-#X text 266 553 \$2 : creation No/Id of mass1;
-#X text 266 571 \$3 : creation No/Id of mass2;
-#X text 261 516 Add non linear link(s);
-#X text 264 588 \$4 : table name for the rigidity;
-#X text 264 606 \$5 : length of the table;
-#X text 264 624 \$6 : table name for the damping;
-#X text 263 643 \$7 : length of the table;
+#X text 271 479 \$6 : Power of the rigidity distance;
+#X msg 35 549 tabLink \$1 \$2 \$3 \$4 \$5 \$6 \$7;
+#X text 267 498 (\$7) : minimum lenght of link;
+#X text 268 515 (\$8) : maximum lenght of link;
+#X text 266 565 \$1 : Id (symbol);
+#X text 266 565 \$1 : Id (symbol);
+#X text 266 583 \$2 : creation No/Id of mass1;
+#X text 266 601 \$3 : creation No/Id of mass2;
+#X text 261 546 Add non linear link(s);
+#X text 264 618 \$4 : table name for the rigidity;
+#X text 264 636 \$5 : length of the table;
+#X text 264 654 \$6 : table name for the damping;
+#X text 263 673 \$7 : length of the table;
+#X msg 33 131 print;
+#X text 103 131 post surrent physical model topology;
+#X msg 30 371 link \$1 \$2 \$3 \$4 \$5 [\$6 [\$7 [\$8 ]]];
#X restore 12 457 pd creation____________;
-#N canvas 0 22 901 640 More_Info 0;
+#N canvas 0 50 901 640 More_Info 0;
#X text 96 12 pmpd : mass - spring - damper model;
#X text 27 155 Be careful : if masses are deleted \, lists messages
won't work;
@@ -449,7 +392,7 @@ links \, or manually \, by messages \, don't do anything.;
-1;
#X obj 426 294 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1
-1;
-#N canvas 0 22 450 300 (subpatch) 0;
+#N canvas 0 50 450 300 (subpatch) 0;
#X array rigidity1 4 float 1;
#A 0 -1 0 1 2;
#X array - 4 float 1;
@@ -572,7 +515,7 @@ rigidity2 yticks 0 5 5 \; rigidity3 resize 51 \; rigidity3 xticks 0
#X connect 44 0 36 0;
#X restore 27 304 pd figure;
#X text 105 375 Rigidity;
-#N canvas 0 22 450 300 (subpatch) 0;
+#N canvas 0 50 450 300 (subpatch) 0;
#X array rigidity2 101 float 1;
#A 0 0 0 0 0 0 0 0 0 0 0 -60 -58.5 -57 -55.5 -54 -52.5 -51 -49.5 -48
-46.5 -45 -43.5 -42 -40.5 -39 -37.5 -36 -34.5 -33 -31.5 -30 -28.5 -27
@@ -591,7 +534,7 @@ rigidity2 yticks 0 5 5 \; rigidity3 resize 51 \; rigidity3 xticks 0
#X text 466 374 Rigidity with Lmin and Lmax;
#X text 563 583 Lmin;
#X text 625 582 Lmax;
-#N canvas 0 22 450 300 (subpatch) 0;
+#N canvas 0 50 450 300 (subpatch) 0;
#X array rigidity3 51 float 1;
#A 0 -4.47214 -4.3589 -4.24264 -4.12311 -4 -3.87298 -3.74166 -3.60555
-3.4641 -3.31662 -3.16228 -3 -2.82843 -2.64575 -2.44949 -2.23607 -2
@@ -606,7 +549,7 @@ rigidity2 yticks 0 5 5 \; rigidity3 resize 51 \; rigidity3 xticks 0
#X restore 241 428 graph;
#X text 314 581 L0;
#X text 257 375 Rigidity with power = 1/2;
-#N canvas 0 22 450 300 (subpatch) 0;
+#N canvas 0 50 450 300 (subpatch) 0;
#X array rigidity4 51 float 1;
#A 0 0 -400 -361 -324 -289 -256 -225 -196 -169 -144 -121 -100 -81 -64
-49 -36 -25 -16 -9 -4 -1 0 1 4 9 16 25 36 49 64 81 100 121 144 169
@@ -642,7 +585,146 @@ their Id.;
#X text 28 41 pmpd is the 2D object of the pmpd objects collection.
;
#X connect 3 0 4 0;
-#X restore 18 695 pd More_Info;
+#X restore 18 715 pd More_Info;
+#N canvas 809 128 638 809 masses_attributes___ 0;
+#X obj 5 3 cnv 15 590 15 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X obj 10 307 cnv 15 150 95 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X obj 4 287 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 7 2 ATTRIBUTES Messages;
+#X text 7 287 Lists :;
+#X text 15 30 The attributes messages ask the object to output some
+of his internal parameters. They can be output by lists for positions
+and forces of masses.;
+#X text 171 320 Output all masses positions in a list on outlet;
+#X text 169 349 Output all forces applied on masses in a list on outlet
+;
+#X text 170 379 Output all speeds of the masses in a list on outlet
+;
+#X obj 14 438 cnv 15 150 95 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X obj 8 418 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 11 418 Tables :;
+#X text 176 450 Output all masses positions in a table (\$1 = table
+name \, \$2 (optional): Masses Id);
+#X text 174 479 Output all forces applied on masses in a table (\$1
+= table name \, \$2 (optional): Masses Id);
+#X text 174 510 Output all speeds of the masses in a table (\$1 = table
+name \, \$2 (optional): Masses Id);
+#X text 170 333 \$1 (optional): Masses Id;
+#X text 170 363 \$1 (optional): Masses Id;
+#X text 171 392 \$1 (optional): Masses Id;
+#X obj 11 669 cnv 15 150 95 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X obj 5 649 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 171 677 output the closest mass;
+#X text 170 691 \$1 : position;
+#X text 8 649 others :;
+#X msg 16 677 closestMass \$1 (\$2);
+#X text 170 706 \$2 : none or Id;
+#X obj 5 75 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 7 74 General :;
+#X obj 10 97 cnv 15 150 150 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X msg 14 105 massPos [\$1];
+#X text 187 106 \$1 : id float or symbol of masses (nothing for all)
+;
+#X text 188 126 output a message for every masses :;
+#X text 218 143 massPos symbolId number posX posY posZ;
+#X text 187 166 \$1 : id float or symbol of masses (nothing for all)
+;
+#X text 188 186 output a message for every masses :;
+#X text 218 203 massPos symbolId number speedX speedY speedZ;
+#X text 187 225 \$1 : id float or symbol of masses (nothing for all)
+;
+#X text 188 241 output a message for every masses :;
+#X msg 14 224 massForce [\$1];
+#X text 218 258 massPos symbolId number forceX forceY forceZ;
+#X msg 14 165 massSpeed [\$1];
+#X obj 12 546 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 172 600 \$1 : table name;
+#X text 171 619 \$2 : masses name;
+#X text 170 577 apply a force to masses. Force come from a table;
+#X obj 13 567 cnv 15 150 40 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X msg 21 574 forceXT \$1 [\$2];
+#X text 15 546 Table in:;
+#X text 178 733 output a series of message :;
+#X msg 15 732 massDistance [\$1 [\$2]];
+#X text 193 747 distance mass1 mass2 distanceX \, distanceY \, distanceZ
+\, distance;
+#X msg 16 320 massPosL (\$1);
+#X msg 16 348 massForceL (\$1);
+#X msg 17 377 massSpeedL (\$1);
+#X msg 16 451 massPosT \$1 (\$2);
+#X msg 16 479 massForceT \$1 (\$2);
+#X msg 17 509 massSpeedT \$1 (\$2);
+#X restore 12 499 pd masses_attributes___;
+#N canvas 888 238 700 758 statistics 0;
+#X obj 25 41 cnv 15 150 270 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X obj 19 21 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 185 70 \$1 : none or Id;
+#X text 186 113 \$1 : none or Id;
+#X text 185 163 \$1 : none or Id;
+#X text 187 194 \$1 : none or Id;
+#X text 185 242 \$1 : none or Id;
+#X text 186 279 \$1 : none or Id;
+#X msg 30 54 massPosMean;
+#X msg 31 92 massPosStd \$1;
+#X msg 30 141 massForceMean;
+#X msg 30 179 massForceStd \$1;
+#X msg 31 228 massSpeedMean;
+#X msg 30 262 massSpeedStd \$1;
+#X text 182 178 output the standard deviation of masses force;
+#X text 181 263 output the standard deviation of masses velocity;
+#X text 22 21 masses :;
+#X obj 29 357 cnv 15 150 350 empty empty empty 20 12 0 14 -233017 -66577
+0;
+#X obj 23 337 cnv 15 590 15 empty empty empty 20 12 0 14 -158509 -66577
+0;
+#X text 191 389 \$1 : none or Id;
+#X text 190 421 \$1 : none or Id;
+#X text 192 467 \$1 : none or Id;
+#X text 194 504 \$1 : none or Id;
+#X text 187 562 \$1 : none or Id;
+#X text 193 597 \$1 : none or Id;
+#X msg 38 402 linkPosStd \$1;
+#X msg 37 489 linkLengthStd \$1;
+#X msg 37 572 linkPosSpeedStd \$1;
+#X text 194 637 \$1 : none or Id;
+#X text 196 674 \$1 : none or Id;
+#X msg 38 658 linkLengthSpeedStd \$1;
+#X msg 37 364 linkPosMean \$1;
+#X msg 37 450 linkLengthMean \$1;
+#X msg 38 538 linkPosSpeedMean \$1;
+#X msg 39 618 linkLengthSpeedMean \$1;
+#X text 189 404 output the standard deviation of link center position
+;
+#X text 189 488 output the standard deviation of links length;
+#X text 192 572 output the standard deviation of links center position
+velocity;
+#X text 191 658 output the standard deviation of links length change
+;
+#X text 26 337 links :;
+#X text 181 141 output the average force applyed to masses;
+#X text 181 54 output the average position of masses;
+#X text 182 91 output the standard deviation of masses position;
+#X text 181 226 output the average velocity of masses;
+#X text 188 361 output the average position of links center;
+#X text 188 451 output the average links length;
+#X text 188 536 output the average center position velocity of links
+;
+#X text 190 619 output the average change in links length;
+#X restore 13 541 pd statistics _________;
+#X text 187 543 To get statistical data of the simulation;
#X connect 20 0 47 0;
#X connect 21 0 24 0;
#X connect 24 0 23 0;