#N canvas 594 117 688 676 10;
#X declare -lib Gem;
#X text 452 8 GEM object;
#X obj 8 206 cnv 15 430 120 empty empty empty 20 12 0 14 -233017 -66577
0;
#X text 39 218 Inlets:;
#X text 63 231 Inlet 1: gemlist;
#X text 38 240 Outlets:;
#X text 62 253 Outlet 1: gemlist;
#X obj 8 156 cnv 15 430 40 empty empty empty 20 12 0 14 -195568 -66577
0;
#X text 17 155 Arguments:;
#X obj 8 76 cnv 15 430 70 empty empty empty 20 12 0 14 -233017 -66577
0;
#X text 453 60 Example:;
#X obj 9 415 cnv 15 100 60 empty empty empty 20 12 0 14 -195568 -66577
0;
#N canvas 0 0 454 304 gemwin 0;
#X obj 132 160 gemwin;
#X obj 67 89 outlet;
#X obj 67 10 inlet;
#X obj 67 41 route create;
#X msg 67 70 set destroy;
#X msg 142 68 set create;
#X msg 198 133 destroy;
#X obj 288 57 world_light;
#X obj 288 28 gemhead;
#X msg 132 112 create \, 1 \, lighting 1;
#X connect 2 0 3 0;
#X connect 3 0 4 0;
#X connect 3 0 9 0;
#X connect 3 1 5 0;
#X connect 3 1 6 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
#X connect 6 0 0 0;
#X connect 8 0 7 0;
#X connect 9 0 0 0;
#X restore 14 454 pd gemwin;
#X msg 14 435 create;
#X text 10 414 Create window:;
#X text 50 12 Synopsis: [gemlist_info];
#X text 71 31 Class: information object;
#X text 29 77 Description: get current transformation of a gemlist
;
#X text 42 94 [gemlist_info] accepts a gemList decompost the transformation
matrix in basic transformation (translation \, scale \, shear \, rotation)
;
#X text 60 174 no argument;
#X text 62 299 Outlet 5: 3 float list : translationX \, Y and Z;
#X text 62 265 Outlet 2: 3 float list : RotationX \, Y and Z;
#X text 62 277 Outlet 3: 3 float list : shear YX \, YZ and ZX;
#X text 62 288 Outlet 4: 3 float list : scale X \, Y and Z;
#X obj 9 336 cnv 15 430 60 empty empty empty 20 12 0 14 -195568 -66577
0;
#N canvas 0 0 452 890 more 0;
#X obj 30 122 gemhead;
#X floatatom 44 144 5 0 0 0 - - -;
#X floatatom 78 144 5 0 0 0 - - -;
#X floatatom 112 144 5 0 0 0 - - -;
#X floatatom 46 184 5 0 0 0 - - -;
#X floatatom 80 184 5 0 0 0 - - -;
#X floatatom 114 184 5 0 0 0 - - -;
#X floatatom 52 227 5 0 0 0 - - -;
#X floatatom 86 227 5 0 0 0 - - -;
#X floatatom 120 227 5 0 0 0 - - -;
#X obj 30 433 gemlist_info;
#X obj 192 568 unpack f f f;
#X obj 178 396 gemhead;
#X obj 178 536 translateXYZ;
#X floatatom 192 591 5 0 0 0 - - -;
#X floatatom 225 591 5 0 0 0 - - -;
#X floatatom 259 591 5 0 0 0 - - -;
#X floatatom 193 761 5 0 0 0 - - -;
#X floatatom 226 761 5 0 0 0 - - -;
#X floatatom 260 761 5 0 0 0 - - -;
#X floatatom 200 516 5 0 0 0 - - -;
#X floatatom 233 516 5 0 0 0 - - -;
#X floatatom 267 516 5 0 0 0 - - -;
#X obj 193 734 unpack f f f;
#X obj 200 490 unpack f f f;
#X obj 178 421 GEMglLoadIdentity;
#X obj 178 450 color 1 0 0;
#X floatatom 46 336 5 0 0 0 - - -;
#X floatatom 80 336 5 0 0 0 - - -;
#X floatatom 114 336 5 0 0 0 - - -;
#X floatatom 52 379 5 0 0 0 - - -;
#X floatatom 86 379 5 0 0 0 - - -;
#X floatatom 120 379 5 0 0 0 - - -;
#X obj 30 163 scaleXYZ 1 1 1;
#X obj 30 205 rotateXYZ 0 0 0;
#X obj 30 247 translateXYZ 0 0 0;
#X obj 30 357 rotateXYZ 0 0 0;
#X obj 30 399 translateXYZ 0 0 0;
#X floatatom 44 283 5 0 0 0 - - -;
#X floatatom 78 283 5 0 0 0 - - -;
#X floatatom 112 283 5 0 0 0 - - -;
#X obj 30 302 scaleXYZ 1 1 1;
#X obj 30 512 cube;
#X obj 30 484 scaleXYZ 1 1 0.2;
#X floatatom 192 665 8 0 0 0 - - -;
#X floatatom 225 681 8 0 0 0 - - -;
#X floatatom 259 697 8 0 0 0 - - -;
#X obj 192 643 unpack f f f;
#N canvas 296 410 419 328 shear 0;
#X obj 28 17 inlet;
#X obj 28 270 outlet;
#X obj 108 21 inlet;
#X obj 205 20 inlet;
#X obj 297 18 inlet;
#X text 117 38 ShearXY;
#X text 217 37 ShearXZ;
#X text 306 36 ShearYZ;
#X obj 28 104 shearYX;
#X obj 28 153 shearZX;
#X obj 28 212 shearZY;
#X connect 0 0 8 0;
#X connect 2 0 8 1;
#X connect 3 0 9 1;
#X connect 4 0 10 1;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 10 0 1 0;
#X restore 178 711 pd shear;
#X obj 178 811 cube 0.5;
#X obj 178 80 tgl 15 0 empty empty empty 0 -6 0 8 -262144 -1 -1 0 1
;
#X obj 178 785 rotateXYZ;
#X obj 178 610 scaleXYZ;
#X obj 178 30 loadbang;
#X msg 178 55 0;
#X text 50 844 this show the transformation needed to create a specific
transformation matrix decomposed with gemlist_info;
#X connect 0 0 33 0;
#X connect 1 0 33 1;
#X connect 2 0 33 2;
#X connect 3 0 33 3;
#X connect 4 0 34 1;
#X connect 5 0 34 2;
#X connect 6 0 34 3;
#X connect 7 0 35 1;
#X connect 8 0 35 2;
#X connect 9 0 35 3;
#X connect 10 0 43 0;
#X connect 10 1 23 0;
#X connect 10 2 47 0;
#X connect 10 3 11 0;
#X connect 10 4 24 0;
#X connect 11 0 14 0;
#X connect 11 1 15 0;
#X connect 11 2 16 0;
#X connect 12 0 25 0;
#X connect 13 0 52 0;
#X connect 14 0 52 1;
#X connect 15 0 52 2;
#X connect 16 0 52 3;
#X connect 17 0 51 1;
#X connect 18 0 51 2;
#X connect 19 0 51 3;
#X connect 20 0 13 1;
#X connect 21 0 13 2;
#X connect 22 0 13 3;
#X connect 23 0 17 0;
#X connect 23 1 18 0;
#X connect 23 2 19 0;
#X connect 24 0 20 0;
#X connect 24 1 21 0;
#X connect 24 2 22 0;
#X connect 25 0 26 0;
#X connect 26 0 13 0;
#X connect 27 0 36 1;
#X connect 28 0 36 2;
#X connect 29 0 36 3;
#X connect 30 0 37 1;
#X connect 31 0 37 2;
#X connect 32 0 37 3;
#X connect 33 0 34 0;
#X connect 34 0 35 0;
#X connect 35 0 41 0;
#X connect 36 0 37 0;
#X connect 37 0 10 0;
#X connect 38 0 41 1;
#X connect 39 0 41 2;
#X connect 40 0 41 3;
#X connect 41 0 36 0;
#X connect 43 0 42 0;
#X connect 44 0 48 1;
#X connect 45 0 48 2;
#X connect 46 0 48 3;
#X connect 47 0 44 0;
#X connect 47 1 45 0;
#X connect 47 2 46 0;
#X connect 48 0 51 0;
#X connect 50 0 0 0;
#X connect 50 0 12 0;
#X connect 51 0 49 0;
#X connect 52 0 48 0;
#X connect 53 0 54 0;
#X connect 54 0 50 0;
#X restore 15 349 pd more;
#X obj 449 77 cnv 15 200 570 empty empty empty 20 12 0 14 -228992 -66577
0;
#X obj 459 310 cnv 15 180 40 empty empty empty 20 12 0 14 -24198 -66577
0;
#X obj 472 89 gemhead;
#X floatatom 494 121 5 0 0 0 - - -;
#X floatatom 528 121 5 0 0 0 - - -;
#X floatatom 562 121 5 0 0 0 - - -;
#X floatatom 488 264 5 0 0 0 - - -;
#X floatatom 522 264 5 0 0 0 - - -;
#X floatatom 556 264 5 0 0 0 - - -;
#X floatatom 486 170 5 0 0 0 - - -;
#X floatatom 520 170 5 0 0 0 - - -;
#X floatatom 554 170 5 0 0 0 - - -;
#X obj 472 320 gemlist_info;
#X obj 488 596 unpack f f f;
#X floatatom 488 619 5 0 0 0 - - -;
#X floatatom 521 619 5 0 0 0 - - -;
#X floatatom 555 619 5 0 0 0 - - -;
#X floatatom 522 470 5 0 0 0 - - -;
#X floatatom 555 470 5 0 0 0 - - -;
#X floatatom 589 470 5 0 0 0 - - -;
#X floatatom 539 394 5 0 0 0 - - -;
#X floatatom 572 394 5 0 0 0 - - -;
#X floatatom 606 394 5 0 0 0 - - -;
#X obj 522 444 unpack f f f;
#X obj 539 371 unpack f f f;
#X text 547 356 position;
#X text 533 428 size;
#X obj 505 520 unpack f f f;
#N canvas 437 191 389 322 shear 0;
#X obj 37 27 inlet;
#X obj 37 280 outlet;
#X obj 118 31 inlet;
#X obj 215 30 inlet;
#X obj 307 28 inlet;
#X text 127 48 ShearXY;
#X text 227 47 ShearXZ;
#X text 316 46 ShearYZ;
#X obj 37 114 shearXY;
#X obj 37 163 shearXZ;
#X obj 37 222 shearYZ;
#X connect 0 0 8 0;
#X connect 2 0 8 1;
#X connect 3 0 9 1;
#X connect 4 0 10 1;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 10 0 1 0;
#X restore 472 237 pd shear;
#X obj 472 285 rotateXYZ;
#X obj 472 189 scaleXYZ;
#X obj 472 144 translateXYZ;
#X floatatom 486 216 5 0 0 0 - - -;
#X floatatom 520 216 5 0 0 0 - - -;
#X floatatom 554 216 5 0 0 0 - - -;
#X floatatom 505 545 5 0 0 0 - - -;
#X floatatom 538 545 5 0 0 0 - - -;
#X floatatom 572 545 5 0 0 0 - - -;
#X text 498 580 orientation;
#X text 514 504 shear (YX \, ZX \, ZY);
#X text 76 349 <- more about gemlist_info;
#X text 18 375 see also :;
#X obj 100 375 gemlist_matrix;
#X obj 548 8 declare -lib Gem;
#X connect 11 0 12 0;
#X connect 12 0 11 0;
#X connect 27 0 56 0;
#X connect 28 0 56 1;
#X connect 29 0 56 2;
#X connect 30 0 56 3;
#X connect 31 0 54 1;
#X connect 32 0 54 2;
#X connect 33 0 54 3;
#X connect 34 0 55 1;
#X connect 35 0 55 2;
#X connect 36 0 55 3;
#X connect 37 1 38 0;
#X connect 37 2 52 0;
#X connect 37 3 48 0;
#X connect 37 4 49 0;
#X connect 38 0 39 0;
#X connect 38 1 40 0;
#X connect 38 2 41 0;
#X connect 48 0 42 0;
#X connect 48 1 43 0;
#X connect 48 2 44 0;
#X connect 49 0 45 0;
#X connect 49 1 46 0;
#X connect 49 2 47 0;
#X connect 52 0 60 0;
#X connect 52 1 61 0;
#X connect 52 2 62 0;
#X connect 53 0 54 0;
#X connect 54 0 37 0;
#X connect 55 0 53 0;
#X connect 56 0 55 0;
#X connect 57 0 53 1;
#X connect 58 0 53 2;
#X connect 59 0 53 3;
