diff options
Diffstat (limited to '3dRotate.pd')
-rw-r--r-- | 3dRotate.pd | 210 |
1 files changed, 210 insertions, 0 deletions
diff --git a/3dRotate.pd b/3dRotate.pd new file mode 100644 index 0000000..ad87792 --- /dev/null +++ b/3dRotate.pd @@ -0,0 +1,210 @@ +#N canvas 369 22 1127 773 10; +#X obj 36 74 expr cos($f4)+(1-cos($f4))*pow($f1 \, 2); +#X obj 399 74 expr (1-cos($f4))*$f1*$f2-(sin($f4))*$f3; +#X obj 772 75 expr (1-cos($f4))*$f1*$f3+(sin($f4))*$f2; +#X obj 35 249 expr (1-cos($f4))*$f2*$f1+(sin($f4))*$f3; +#X obj 399 246 expr cos($f4)+(1-cos($f4))*pow($f2 \, 2); +#X obj 773 254 expr (1-cos($f4))*$f2*$f3-(sin($f4))*$f1; +#X obj 35 419 expr (1-cos($f4))*$f3*$f1-(sin($f4))*$f2; +#X obj 402 416 expr (1-cos($f4))*$f3*$f2+(sin($f4))*$f1; +#X obj 776 415 expr cos($f4)+(1-cos($f4))*pow($f3 \, 2); +#X obj 20 101 *; +#X obj 36 50 r \$0-Rx; +#X obj 123 50 r \$0-Ry; +#X obj 210 50 r \$0-Rz; +#X obj 297 51 r \$0-rho; +#X obj 399 49 r \$0-Rx; +#X obj 490 49 r \$0-Ry; +#X obj 582 49 r \$0-Rz; +#X obj 674 50 r \$0-rho; +#X obj 772 50 r \$0-Rx; +#X obj 863 50 r \$0-Ry; +#X obj 955 51 r \$0-Rz; +#X obj 1047 51 r \$0-rho; +#X obj 35 224 r \$0-Rx; +#X obj 126 224 r \$0-Ry; +#X obj 218 224 r \$0-Rz; +#X obj 310 225 r \$0-rho; +#X obj 399 222 r \$0-Rx; +#X obj 486 222 r \$0-Ry; +#X obj 573 221 r \$0-Rz; +#X obj 660 222 r \$0-rho; +#X obj 773 229 r \$0-Rx; +#X obj 864 229 r \$0-Ry; +#X obj 956 229 r \$0-Rz; +#X obj 1048 231 r \$0-rho; +#X obj 35 394 r \$0-Rx; +#X obj 126 394 r \$0-Ry; +#X obj 218 394 r \$0-Rz; +#X obj 310 395 r \$0-rho; +#X obj 402 391 r \$0-Rx; +#X obj 493 391 r \$0-Ry; +#X obj 585 391 r \$0-Rz; +#X obj 677 392 r \$0-rho; +#X obj 776 391 r \$0-Rx; +#X obj 863 391 r \$0-Ry; +#X obj 950 391 r \$0-Rz; +#X obj 1037 391 r \$0-rho; +#X obj 19 271 *; +#X obj 19 442 *; +#X obj 383 98 *; +#X obj 383 271 *; +#X obj 386 441 *; +#X obj 756 100 *; +#X obj 757 278 *; +#X obj 760 440 *; +#X obj 20 124 +; +#X obj 20 146 +; +#X obj 19 294 +; +#X obj 19 316 +; +#X obj 19 464 +; +#X obj 19 486 +; +#X obj 21 635 pack f f f; +#X text 20 4 M A T R I X; +#X text 21 547 O U T P U T; +#X obj 637 615 s \$0-rho; +#X obj 247 589 unpack f f f; +#X text 253 513 I N P U T; +#X obj 419 565 unpack f f f; +#X obj 498 613 s \$0-Rz; +#X obj 458 633 s \$0-Ry; +#X obj 419 655 s \$0-Rx; +#X obj 419 623 f; +#X obj 607 569 t b f; +#X obj 607 541 inlet float; +#X text 692 540 rho; +#X obj 419 543 inlet vector; +#X text 513 543 R; +#X obj 247 543 inlet vector; +#X text 338 544 A; +#X obj 21 658 outlet vector; +#X text 120 658 V; +#X obj 888 627 s \$0-Rz; +#X obj 832 626 s \$0-Ry; +#X obj 777 626 s \$0-Rx; +#X obj 942 627 s \$0-rho; +#X obj 777 554 loadbang; +#X obj 777 575 t b b b b; +#X text 780 520 INIT; +#X obj 777 600 \$1; +#X obj 832 603 \$2; +#X obj 888 606 \$3; +#X obj 942 606 \$4; +#X obj 247 656 s \$0-Ax; +#X obj 286 634 s \$0-Ay; +#X obj 326 612 s \$0-Az; +#X obj 20 27 r \$0-Ax; +#X obj 19 197 r \$0-Ax; +#X obj 19 368 r \$0-Ax; +#X obj 383 24 r \$0-Ay; +#X obj 383 197 r \$0-Ay; +#X obj 386 367 r \$0-Ay; +#X obj 756 26 r \$0-Az; +#X obj 757 204 r \$0-Az; +#X obj 760 366 r \$0-Az; +#X obj 20 167 s \$0-Vx; +#X obj 21 574 r \$0-Vx; +#X obj 53 594 r \$0-Vy; +#X obj 86 614 r \$0-Vz; +#X obj 19 337 s \$0-Vy; +#X obj 19 507 s \$0-Vz; +#X text 571 692 formula from http://en.wikipedia.org/wiki/Rotation_matrix. +; +#X text 571 662 rotates an incoming vector A around the Axis R by the +angle rho.; +#X text 951 733 Version: 2007-12-09; +#X text 952 752 Author: Roman Haefeli; +#X connect 0 0 9 1; +#X connect 1 0 48 1; +#X connect 2 0 51 1; +#X connect 3 0 46 1; +#X connect 4 0 49 1; +#X connect 5 0 52 1; +#X connect 6 0 47 1; +#X connect 7 0 50 1; +#X connect 8 0 53 1; +#X connect 9 0 54 0; +#X connect 10 0 0 0; +#X connect 11 0 0 1; +#X connect 12 0 0 2; +#X connect 13 0 0 3; +#X connect 14 0 1 0; +#X connect 15 0 1 1; +#X connect 16 0 1 2; +#X connect 17 0 1 3; +#X connect 18 0 2 0; +#X connect 19 0 2 1; +#X connect 20 0 2 2; +#X connect 21 0 2 3; +#X connect 22 0 3 0; +#X connect 23 0 3 1; +#X connect 24 0 3 2; +#X connect 25 0 3 3; +#X connect 26 0 4 0; +#X connect 27 0 4 1; +#X connect 28 0 4 2; +#X connect 29 0 4 3; +#X connect 30 0 5 0; +#X connect 31 0 5 1; +#X connect 32 0 5 2; +#X connect 33 0 5 3; +#X connect 34 0 6 0; +#X connect 35 0 6 1; +#X connect 36 0 6 2; +#X connect 37 0 6 3; +#X connect 38 0 7 0; +#X connect 39 0 7 1; +#X connect 40 0 7 2; +#X connect 41 0 7 3; +#X connect 42 0 8 0; +#X connect 43 0 8 1; +#X connect 44 0 8 2; +#X connect 45 0 8 3; +#X connect 46 0 56 0; +#X connect 47 0 58 0; +#X connect 48 0 54 1; +#X connect 49 0 56 1; +#X connect 50 0 58 1; +#X connect 51 0 55 1; +#X connect 52 0 57 1; +#X connect 53 0 59 1; +#X connect 54 0 55 0; +#X connect 55 0 103 0; +#X connect 56 0 57 0; +#X connect 57 0 107 0; +#X connect 58 0 59 0; +#X connect 59 0 108 0; +#X connect 60 0 78 0; +#X connect 64 0 91 0; +#X connect 64 1 92 0; +#X connect 64 2 93 0; +#X connect 66 0 70 0; +#X connect 66 1 68 0; +#X connect 66 2 67 0; +#X connect 70 0 69 0; +#X connect 71 0 70 0; +#X connect 71 1 63 0; +#X connect 72 0 71 0; +#X connect 74 0 66 0; +#X connect 76 0 64 0; +#X connect 84 0 85 0; +#X connect 85 0 87 0; +#X connect 85 1 88 0; +#X connect 85 2 89 0; +#X connect 85 3 90 0; +#X connect 87 0 82 0; +#X connect 88 0 81 0; +#X connect 89 0 80 0; +#X connect 90 0 83 0; +#X connect 94 0 9 0; +#X connect 95 0 46 0; +#X connect 96 0 47 0; +#X connect 97 0 48 0; +#X connect 98 0 49 0; +#X connect 99 0 50 0; +#X connect 100 0 51 0; +#X connect 101 0 52 0; +#X connect 102 0 53 0; +#X connect 104 0 60 0; +#X connect 105 0 60 1; +#X connect 106 0 60 2; |