#N canvas 596 196 676 689 10;
#X declare -lib Gem;
#X text 452 8 GEM object;
#X obj 7 193 cnv 15 430 480 empty empty empty 20 12 0 14 #e0e0e0 #404040 0;
#X obj 7 149 cnv 15 430 40 empty empty empty 20 12 0 14 #bcbcbc #404040 0;
#X text 16 153 Arguments:;
#X obj 7 43 cnv 15 430 100 empty empty empty 20 12 0 14 #e0e0e0 #404040 0;
#X obj 449 54 cnv 15 210 350 empty empty empty 20 12 0 14 #dce4fc #404040 0;
#X text 451 28 Example:;
#X obj 454 286 cnv 15 160 60 empty empty empty 20 12 0 14 #14e814 #404040 0;
#X text 50 2 Synopsis: [gemwin];
#X text 17 46 Description: access to the window manager;
#X obj 458 320 gemwin;
#X msg 458 103 reset \, dimen 640 480 \, create \, 1;
#X msg 486 195 0 \, destroy;
#X text 16 196 Inlet 1:;
#X text 30 225 reset : reset the graphics manager to the default values;
#X text 29 432 create : create the graphics window;
#X text 29 446 destroy : destroy the graphics window;
#X text 30 479 float (1/0) : turn on/off rendering;
#X text 30 493 print : show some information on the stderr;
#X text 71 21 Class: window handling;
#N canvas 361 97 456 455 FSAA 0;
#X msg 48 222 0;
#X msg 79 222 2;
#X msg 108 222 4;
#X text 54 129 2 - double resolution (4 times the pixel data);
#X text 43 324 Full-scene anti-aliasing by supersampling usually means that each full frame is rendered at double (2x) or quadruple (4x) the display resolution \, and then down-sampled to match the display resolution. So a 4x FSAA would render 16 supersampled pixels for each single pixel of each frame.;
#X text 54 189 8 - eight-times resolution (64 times the pixel data);
#X text 54 149 4 - quadruple resolution (16 times the pixel data);
#X text 54 109 0 - turn off super sampling for anti-aliasing;
#X text 43 405 http://en.wikipedia.org/wiki/Anti-aliasing#Full-scene_anti-aliasing;
#X text 200 220 <-- destroy gemwin between clicking these;
#X obj 90 299 s \$0-gemwin-in;
#X text 54 168 5 - quadruple resolution (16 times the pixel data);
#X text 33 6 Gem provides Full Scene Anti-Aliasing for smoothing out the edges of all things drawn in the OpenGL scene. To enable it \, send the "FSAA" message to the [gemwin] before creating it.;
#X text 33 61 FSAA might or might not work depending on your graphic card \, the value of the parameter may also vary.;
#X msg 169 222 8;
#X msg 139 222 5;
#X msg 90 272 destroy \, FSAA \$1 \, create \, 1;
#X connect 0 0 16 0;
#X connect 1 0 16 0;
#X connect 2 0 16 0;
#X connect 14 0 16 0;
#X connect 15 0 16 0;
#X connect 16 0 10 0;
#X restore 356 269 pd FSAA;
#X obj 471 294 r \$0-gemwin-in;
#X text 29 285 fullscreen 0|1 : make fullscreen-window;
#X text 57 302 (if possible with the dimensions passed via "dimen");
#N canvas 430 50 593 422 fullscreen 0;
#X text 52 52 fullscreen 0/1: make fullscreen-window (if possible with the dimensions passed via "dimen");
#X text 52 96 on platform's that support it (currently: Mac OS X) you can specify on which screen you want to go fullscreen (if you have several screens): e.g. "fullscreen 2" will make a fullscreen-window on Screen2;
#X text 54 30 FULLSCREEN SUPPORT;
#X obj 55 159 vradio 15 1 0 3 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0;
#X floatatom 55 210 5 0 0 0 - - - 0;
#X msg 55 231 reset \, fullscreen \$1 \, create \, 1;
#X text 77 156 deactivate fullscreen;
#X text 76 173 fullscreen on screen 1;
#X text 76 189 fullscreen on screen 2;
#X msg 68 286 0 \, destroy;
#X text 51 342 BE CAREFUL : when you are in fullscreen mode \, you have no more access to the other windows of your system.;
#N canvas 107 50 450 300 esc 0;
#X obj 65 20 gemkeyboard;
#X obj 65 167 outlet;
#X obj 89 71 keyname;
#X obj 128 96 sel Escape;
#X obj 65 41 sel 53;
#X obj 189 47 sel Escape;
#X obj 150 22 gemkeyname;
#X connect 0 0 4 0;
#X connect 2 1 3 0;
#X connect 3 0 1 0;
#X connect 4 0 1 0;
#X connect 5 0 1 0;
#X connect 6 1 5 0;
#X restore 68 264 pd esc;
#X obj 55 315 s \$0-gemwin-in;
#X text 251 171 press ESC to quit;
#X connect 3 0 4 0;
#X connect 4 0 5 0;
#X connect 5 0 12 0;
#X connect 9 0 12 0;
#X connect 11 0 9 0;
#X restore 356 288 pd fullscreen;
#X text 57 253 the x and y dimensions of the window. (default: 500 500);
#X text 29 508 frame <number> : number of frames per second (default 20);
#X text 30 268 FSAA <number> : anti aliasing (default:0);
#X text 30 318 border 1|0 : create a window with/out borders (default 1);
#X text 57 350 the x and y offset of the window. (default: 0 0);
#N canvas 641 438 406 148 offset 0;
#X text 53 8 OFFSET SUPPORT;
#X text 21 28 offset might not work on some window managers if the borders are on;
#X text 20 55 under OSX you must take into account the number of pixel of the menubar \, title and eventually of your dock.;
#X text 19 82 [offset 0 -60( with [menubar 0( is working in 10.6 to set the window in the top left of the screen;
#X restore 356 334 pd offset;
#N canvas 230 93 618 505 more 0;
#X text 230 327 title <title_symbol>: set the title for the window;
#X msg 121 327 title my_window;
#X obj 94 187 tgl 15 0 empty empty empty 0 -6 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 94 205 menubar \$1;
#X msg 117 187 -1;
#X text 188 190 menubar -1/0/1: hide or show the Mac OS X menubar \, 1 shows \, 0 hides \, and -1 hides by default and shows on mouseover;
#X msg 44 60 cursor \$1;
#X obj 44 41 tgl 15 0 empty empty empty 0 -6 0 10 #fcfcfc #000000 #000000 0 1;
#X text 139 59 cursor 0/1: turn the cursor on/off;
#X obj 109 247 tgl 15 0 empty empty empty 0 -6 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 109 266 topmost \$1;
#X text 204 255 topmost 0/1: make the gemwin the top most window \, on top of everything else (Windows only?);
#X msg 126 376 create remotehost:8.0;
#X text 283 369 when using X-windows \, you can also create a window on a remote display!;
#X obj 44 465 s \$0-gemwin-in;
#X text 41 14 Other messages to [gemwin] regarding the window;
#X msg 55 139 0 \, destroy;
#X msg 110 438 create \, 1;
#X text 188 437 ...and create it after;
#X text 133 140 destroy window before setting window properties...;
#X text 81 104 All of these messages must be sent to [gemwin] before the window is created in order to take effect:;
#X connect 1 0 14 0;
#X connect 2 0 3 0;
#X connect 3 0 14 0;
#X connect 4 0 3 0;
#X connect 6 0 14 0;
#X connect 7 0 6 0;
#X connect 9 0 10 0;
#X connect 10 0 14 0;
#X connect 12 0 14 0;
#X connect 16 0 14 0;
#X connect 17 0 14 0;
#X restore 30 367 pd more window properties;
#X text 29 558 lighting 0|1 : turn lighting off/on (default:0);
#N canvas 742 344 580 384 more 0;
#X text 105 134 lighting 1/0 : turn lighting on/off;
#X text 132 196 fogmode 0/1/2/3 : set the fog mode (OFF/LINEAR/EXP/EXP^2);
#X text 298 317 fogcolor R G B : the color of the fog;
#X text 219 237 fog num : the fog density;
#X text 24 11 messages to the [gemwin] regarding lighting effects;
#X obj 24 116 tgl 15 0 empty empty empty 0 -6 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 24 134 lighting \$1;
#N canvas 710 134 570 462 color 0;
#X obj 103 100 hsl 128 15 0 1 0 0 empty empty R 12 8 1 12 #fce0e0 #000000 #000000 0 1;
#X obj 236 100 hsl 128 15 0 1 0 0 empty empty G 12 8 1 12 #d8fcd8 #000000 #000000 0 1;
#X obj 370 100 hsl 128 15 0 1 0 0 empty empty B 12 8 1 12 #dce4fc #000000 #000000 0 1;
#X obj 100 299 outlet;
#X obj 132 223 list;
#X msg 132 242 set fogcolor \$1 \$2 \$3;
#X obj 233 125 t b f;
#X obj 367 125 t b f;
#X obj 100 171 pack 0 0 0;
#X obj 100 200 t b a;
#X connect 0 0 8 0;
#X connect 1 0 6 0;
#X connect 2 0 7 0;
#X connect 4 0 5 0;
#X connect 5 0 3 0;
#X connect 6 0 8 0;
#X connect 6 1 8 1;
#X connect 7 0 8 0;
#X connect 7 1 8 2;
#X connect 8 0 9 0;
#X connect 9 0 3 0;
#X connect 9 1 4 0;
#X coords 0 -1 1 1 400 13 1 100 100;
#X restore 54 296 pd color sliders;
#X msg 54 318 fogcolor 0 0 0;
#X msg 59 208 fogmode 0;
#N canvas 889 134 348 479 fog 0;
#X obj 84 239 outlet;
#X obj 100 101 hradio 15 1 0 4 empty empty empty 0 -6 0 10 #fcfcfc #000000 #000000 0;
#X msg 207 182 set fogmode \$1;
#X obj 84 140 trigger bang float;
#X connect 1 0 3 0;
#X connect 2 0 0 0;
#X connect 3 0 0 0;
#X connect 3 1 2 0;
#X coords 0 -1 1 1 60 13 1 100 100;
#X restore 59 184 pd fog;
#X msg 60 258 fog 0;
#N canvas 889 134 364 495 fog 0;
#X obj 84 239 outlet;
#X obj 84 140 trigger bang float;
#X obj 103 101 hsl 128 15 0 1 0 0 empty empty empty -2 -6 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 207 182 set fog \$1;
#X connect 1 0 0 0;
#X connect 1 1 3 0;
#X connect 2 0 1 0;
#X connect 3 0 0 0;
#X coords 0 -1 1 1 133 13 1 100 100;
#X restore 60 236 pd fog;
#X obj 24 68 gemhead;
#X obj 24 90 world_light;
#X obj 24 345 s \$0-gemwin-in;
#X text 23 34 Be careful: when you activate lighting \, you must have some lights to see something \, such as:;
#X connect 5 0 6 0;
#X connect 6 0 15 0;
#X connect 7 0 8 0;
#X connect 8 0 15 0;
#X connect 9 0 15 0;
#X connect 10 0 9 0;
#X connect 11 0 15 0;
#X connect 12 0 11 0;
#X connect 13 0 14 0;
#X restore 30 575 pd more lighting;
#X obj 490 242 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X text 29 635 stereo 0|1|2|3 : set 3D stereo-mode to off(0) \, 2-screen-mode(1) \, Red/Green-mode(2);
#N canvas 680 259 468 458 draw_geos 0;
#X obj 64 53 gemhead;
#X obj 244 55 gemhead;
#X obj 244 159 rotateXYZ;
#X obj 398 109 f;
#X obj 398 158 % 360;
#X obj 398 134 + 1;
#X obj 398 86 metro 50;
#X obj 64 92 color 0.8 0.8 0.8;
#X obj 244 92 color 0.8 0.8 0.8;
#X obj 64 188 cube 0.75;
#X obj 64 118 translateXYZ 2 2 0;
#X obj 244 117 translateXYZ 2 -2 0;
#X obj 64 157 rotateXYZ 45 0 0;
#X obj 244 190 square 0.75;
#X obj 63 220 gemhead;
#X obj 243 222 gemhead;
#X obj 63 259 color 0.8 0.8 0.8;
#X obj 243 259 color 0.8 0.8 0.8;
#X obj 63 285 translateXYZ -2 2 0;
#X obj 63 308 sphere 0.75 30;
#X obj 243 284 translateXYZ -2 -2 0;
#X obj 243 310 circle 0.75;
#X obj 398 56 inlet;
#X connect 0 0 7 0;
#X connect 1 0 8 0;
#X connect 2 0 13 0;
#X connect 3 0 5 0;
#X connect 4 0 3 1;
#X connect 4 0 2 3;
#X connect 4 0 12 3;
#X connect 5 0 4 0;
#X connect 6 0 3 0;
#X connect 7 0 10 0;
#X connect 8 0 11 0;
#X connect 10 0 12 0;
#X connect 11 0 2 0;
#X connect 12 0 9 0;
#X connect 14 0 16 0;
#X connect 15 0 17 0;
#X connect 16 0 18 0;
#X connect 17 0 20 0;
#X connect 18 0 19 0;
#X connect 20 0 21 0;
#X connect 22 0 6 0;
#X restore 455 378 pd draw_geos;
#X msg 472 152 create \, 1;
#N canvas 252 99 539 630 buffering 0;
#X msg 63 127 buffer 1;
#X msg 78 152 buffer 2;
#X text 134 127 single buffering;
#X text 145 150 double buffering;
#X msg 111 244 bang;
#X text 152 254 swap the buffers (double buffer mode);
#X text 151 235 clear the buffer (single buffer mode);
#X text 30 16 messages to [gemwin] concerning the buffer rendering mode;
#X msg 17 83 0 \, destroy;
#X msg 117 198 create \, 1;
#X text 195 197 ...and create it after;
#X obj 33 283 s \$0-gemwin-in;
#X text 95 84 destroy window before to set buffer mode...;
#X text 30 323 When you are in single buffer mode \, you must bang the gemhead each time you want to draw. like:;
#X obj 33 383 loadbang;
#X msg 33 407 0;
#X obj 33 436 gemhead;
#X obj 149 383 metro 50;
#X obj 149 364 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X obj 33 519 rotateXYZ;
#X obj 176 426 f;
#X obj 176 472 % 360;
#X obj 33 580 square 0.75;
#X obj 33 550 translateXYZ 2 0 0;
#X text 172 363 toggle to draw;
#X obj 176 448 + 1;
#X obj 33 472 color 0.8 0.8 0.8;
#X text 29 33 Changing the rendering mode must be done before the window is created in order to take effect.;
#X obj 176 494 t f f;
#X obj 149 405 t b b;
#X msg 279 142 transparent \$1;
#X obj 279 123 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X text 299 108 use RGBA buffer to have an alpha channel and a transparent window, f 32;
#X connect 0 0 11 0;
#X connect 1 0 11 0;
#X connect 4 0 11 0;
#X connect 8 0 11 0;
#X connect 9 0 11 0;
#X connect 14 0 15 0;
#X connect 15 0 16 0;
#X connect 16 0 26 0;
#X connect 17 0 29 0;
#X connect 18 0 17 0;
#X connect 19 0 23 0;
#X connect 20 0 25 0;
#X connect 21 0 28 0;
#X connect 23 0 22 0;
#X connect 25 0 21 0;
#X connect 26 0 19 0;
#X connect 28 0 19 3;
#X connect 28 1 20 1;
#X connect 29 0 16 0;
#X connect 29 1 20 0;
#X connect 30 0 11 0;
#X connect 31 0 30 0;
#X restore 355 405 pd buffering;
#N canvas 556 191 548 430 stereo-3D 0;
#X text 32 18 messages to [gemwin] regarding stereoscopic appearance:;
#X msg 31 158 stereo \$1;
#X obj 31 398 s \$0-gemwin-in;
#X obj 31 60 vradio 15 1 0 4 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0;
#X text 54 77 2 screen mode;
#X text 53 91 Red / Green mode;
#X text 105 158 set stereo-mode;
#X text 54 61 off;
#X msg 48 210 stereoSep \$1;
#X floatatom 48 188 5 0 0 0 - - - 0;
#X text 137 209 set the stereo-separation (default:-15);
#X msg 66 258 stereoFoc \$1;
#X text 150 259 set the stereo-focal;
#X floatatom 66 234 5 0 0 0 - - - 0;
#X obj 80 283 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X text 174 297 turn the separation-line between the 2 screens in stereo-mode 1 on/off;
#X msg 79 344 0 \, destroy;
#X msg 79 369 create \, 1;
#X text 157 345 destroy window before to set stereo...;
#X text 157 368 ...and create it after;
#X text 53 106 Crystal Glasses mode (needs hardware support!);
#X msg 80 302 stereoLine \$1;
#X connect 1 0 2 0;
#X connect 3 0 1 0;
#X connect 8 0 2 0;
#X connect 9 0 8 0;
#X connect 11 0 2 0;
#X connect 13 0 11 0;
#X connect 14 0 21 0;
#X connect 16 0 2 0;
#X connect 17 0 2 0;
#X connect 21 0 2 0;
#X restore 354 641 pd stereo-3D;
#X text 464 132 basic create and start rendering;
#X text 513 241 change background color;
#X text 56 538 set the background color of the window (default: 0 0 0);
#X text 30 238 dimen <x> <y>:;
#X text 30 333 offset <x> <y>:;
#X text 29 593 view <x> <y> <z> : translate the camera (default: 0 0 4);
#N canvas 124 233 762 647 more 0;
#X text 43 11 messages to [gemwin] regarding the view-point ("camera");
#X text 312 389 perspec <left> <right> <bottom> <top> <front> <back>::;
#X text 311 407 set the clipping planes of the view-point. this might be what you need \, if all the objects that re further away than 20 units suddenly disappear;
#X text 311 449 default: -1 1 -1 1 1 20;
#X text 208 51 view <x> <y> <z>::;
#X text 208 70 translate the camera / set the viewpoint:: the viewing-direction will not be changed.;
#X text 80 119 default: 0 0 4;
#X text 208 98 the viewing direction defaults to "0 0 1" \, with y-axis as "up";
#X text 303 167 view <x> <y> <z> <azimuth>::;
#X text 303 184 view <x> <y> <z> <azimuth> <elevation>::;
#X text 303 201 translate/rotate camera/viewpoint \; the "up" direction will still be the y-axis;
#X text 389 284 view <view_x> <view_y> <view_z> <target_x> <target_y> <target_z> <up_x> <up_y> <up_z>::;
#X text 389 314 set viewpoint (view_X view_Y view_Z). the camera will look at the target-point (target_X \, target_Y \, target_Z). "up" is defined via the vector (up_X \, up_Y \, up_Z);
#X text 301 251 default: 0 0 4 0 0;
#X text 389 355 default: 0 0 4 0 0 0 0 1 0;
#X obj 25 588 s \$0-gemwin-in;
#X msg 25 101 view \$1 \$2 \$3;
#X msg 42 190 view \$1 \$2 \$3 \$4;
#X msg 49 250 view \$1 \$2 \$3 \$4 \$5;
#X msg 52 330 view \$1 \$2 \$3 \$4 \$5 \$6 \$7 \$8 \$9;
#X msg 101 452 perspec \$1 \$2 \$3 \$4 \$5 \$6;
#X text 310 467 if you want to remove perspective \, see [ortho];
#X msg 66 563 view 0 0 20 \, perspec -1 1 -1 1 4 50;
#N canvas 1299 508 544 500 perspec 0;
#X obj 90 428 outlet;
#X obj 268 273 t f f;
#X obj 268 298 * -1;
#X obj 90 268 t f f;
#X obj 90 293 * -1;
#X obj 90 367 pack -1 1 -1 1 1 20;
#X msg 90 389 set perspec \$1 \$2 \$3 \$4 \$5 \$6 \, bang;
#X msg 172 453 set perspec \, adddollar 1 \, adddollar 2 \, adddollar 3 \, adddollar 4 \, adddollar 5 \, adddollar 6;
#X floatatom 103 116 5 0.1 5 1 x_wideness - - 0;
#X floatatom 103 133 5 0.1 5 1 y_wideness - - 0;
#X floatatom 103 150 5 0 0 1 z_depth - - 0;
#X obj 360 196 select 1;
#X obj 405 219 t b f f;
#X obj 249 226 t b f f;
#X obj 204 203 select 0;
#X obj 360 218 f 20;
#X obj 204 224 f 1;
#X msg 204 246 set \$1;
#X msg 360 240 set \$1;
#X obj 134 216 t b f f;
#X obj 89 193 select 0;
#X obj 89 214 f 1;
#X msg 89 236 set \$1;
#X obj 328 97 loadbang;
#X obj 328 119 t b b;
#X obj 328 141 t b b b;
#X connect 1 0 2 0;
#X connect 1 1 5 3;
#X connect 2 0 5 2;
#X connect 3 0 4 0;
#X connect 3 1 5 1;
#X connect 4 0 5 0;
#X connect 5 0 6 0;
#X connect 6 0 0 0;
#X connect 7 0 0 0;
#X connect 8 0 20 0;
#X connect 9 0 14 0;
#X connect 10 0 11 0;
#X connect 11 0 15 0;
#X connect 11 1 12 0;
#X connect 12 0 5 0;
#X connect 12 1 5 5;
#X connect 12 2 15 1;
#X connect 13 0 5 0;
#X connect 13 1 1 0;
#X connect 13 2 16 1;
#X connect 14 0 16 0;
#X connect 14 1 13 0;
#X connect 15 0 18 0;
#X connect 16 0 17 0;
#X connect 17 0 9 0;
#X connect 18 0 10 0;
#X connect 19 1 3 0;
#X connect 19 2 21 1;
#X connect 20 0 21 0;
#X connect 20 1 19 0;
#X connect 21 0 22 0;
#X connect 22 0 8 0;
#X connect 23 0 24 0;
#X connect 24 0 25 0;
#X connect 24 1 7 0;
#X connect 25 0 21 0;
#X connect 25 1 16 0;
#X connect 25 2 15 0;
#X coords 0 -1 1 1 100 67 1 100 100;
#X restore 101 380 pd perspec;
#X text 292 554 the default camera has a very wide angle. this message allows to narrow it.;
#N canvas 506 305 612 484 view 0;
#X floatatom 112 113 5 0 0 0 x - - 0;
#X floatatom 158 113 5 0 0 0 y - - 0;
#X floatatom 201 113 5 0 0 0 z - - 0;
#X floatatom 236 113 5 0 0 2 azimuth - - 0;
#X obj 369 109 loadbang;
#X obj 140 335 outlet;
#X obj 201 226 t b f;
#X obj 150 227 t b f;
#X obj 369 131 t b b;
#X msg 213 342 set view \, adddollar 1 \, adddollar 2 \, adddollar 3 \, adddollar 4;
#X obj 140 274 pack 0 0 4 0;
#X obj 251 226 t b f;
#X msg 398 196 set 4;
#X msg 140 296 set view \$1 \$2 \$3 \$4 \, bang;
#X connect 0 0 10 0;
#X connect 1 0 7 0;
#X connect 2 0 6 0;
#X connect 3 0 11 0;
#X connect 4 0 8 0;
#X connect 6 0 10 0;
#X connect 6 1 10 2;
#X connect 7 0 10 0;
#X connect 7 1 10 1;
#X connect 8 0 12 0;
#X connect 8 1 9 0;
#X connect 9 0 5 0;
#X connect 10 0 13 0;
#X connect 11 0 10 0;
#X connect 11 1 10 3;
#X connect 12 0 2 0;
#X connect 13 0 5 0;
#X coords 0 -1 1 1 180 30 1 100 100;
#X restore 42 156 pd view;
#N canvas 508 299 612 484 view 0;
#X floatatom 112 113 5 0 0 0 x - - 0;
#X floatatom 158 113 5 0 0 0 y - - 0;
#X floatatom 201 113 5 0 0 0 z - - 0;
#X floatatom 236 113 5 0 0 2 azimuth - - 0;
#X obj 369 109 loadbang;
#X obj 140 335 outlet;
#X obj 201 226 t b f;
#X obj 150 227 t b f;
#X obj 369 131 t b b;
#X obj 251 226 t b f;
#X msg 398 196 set 4;
#X msg 140 296 set view \$1 \$2 \$3 \$4 \$5 \, bang;
#X obj 140 274 pack 0 0 4 0 0;
#X floatatom 286 113 5 0 0 2 elevate - - 0;
#X obj 291 226 t b f;
#X msg 213 342 set view \, adddollar 1 \, adddollar 2 \, adddollar 3 \, adddollar 4 \, adddollar 5;
#X connect 0 0 12 0;
#X connect 1 0 7 0;
#X connect 2 0 6 0;
#X connect 3 0 9 0;
#X connect 4 0 8 0;
#X connect 6 0 12 0;
#X connect 6 1 12 2;
#X connect 7 0 12 0;
#X connect 7 1 12 1;
#X connect 8 0 10 0;
#X connect 8 1 15 0;
#X connect 9 0 12 0;
#X connect 9 1 12 3;
#X connect 10 0 2 0;
#X connect 11 0 5 0;
#X connect 12 0 11 0;
#X connect 13 0 14 0;
#X connect 14 0 12 0;
#X connect 14 1 12 4;
#X connect 15 0 5 0;
#X coords 0 -1 1 1 230 30 1 100 100;
#X restore 49 216 pd view;
#N canvas 509 296 612 484 view 0;
#X floatatom 112 113 5 0 0 0 x - - 0;
#X floatatom 158 113 5 0 0 0 y - - 0;
#X floatatom 201 113 5 0 0 0 z - - 0;
#X obj 369 109 loadbang;
#X obj 140 335 outlet;
#X obj 201 226 t b f;
#X obj 150 227 t b f;
#X obj 369 131 t b b;
#X msg 398 196 set 4;
#X obj 140 274 pack 0 0 4;
#X msg 140 296 set view \$1 \$2 \$3 \, bang;
#X msg 213 342 set view \, adddollar 1 \, adddollar 2 \, adddollar 3;
#X connect 0 0 9 0;
#X connect 1 0 6 0;
#X connect 2 0 5 0;
#X connect 3 0 7 0;
#X connect 5 0 9 0;
#X connect 5 1 9 2;
#X connect 6 0 9 0;
#X connect 6 1 9 1;
#X connect 7 0 8 0;
#X connect 7 1 11 0;
#X connect 8 0 2 0;
#X connect 9 0 10 0;
#X connect 10 0 4 0;
#X connect 11 0 4 0;
#X coords 0 -1 1 1 140 30 1 100 100;
#X restore 25 65 pd view;
#N canvas 380 50 612 484 view 0;
#X floatatom 214 113 5 0 0 2 X - - 0;
#X obj 166 22 loadbang;
#X obj 139 335 outlet;
#X obj 174 177 t b f;
#X obj 139 177 t b f;
#X obj 214 177 t b f;
#X msg 174 79 set 4;
#X floatatom 249 113 5 0 0 2 Y - - 0;
#X obj 249 177 t b f;
#X obj 139 274 pack 0 0 4 0 0 0 0 1 0;
#X floatatom 284 113 5 0 0 2 Z - - 0;
#X floatatom 104 113 5 0 0 2 x - - 0;
#X floatatom 139 113 5 0 0 2 y - - 0;
#X floatatom 174 113 5 0 0 2 z - - 0;
#X floatatom 324 113 5 0 0 2 upX - - 0;
#X floatatom 359 113 5 0 0 2 upY - - 0;
#X floatatom 394 113 5 0 0 2 upZ - - 0;
#X obj 284 177 t b f;
#X obj 324 177 t b f;
#X obj 359 177 t b f;
#X obj 394 177 t b f;
#X obj 324 199 t b;
#X obj 214 199 t b;
#X msg 139 296 set view \$1 \$2 \$3 \$4 \$5 \$6 \$7 \$8 \$9 \, bang;
#X msg 251 22 set view \, adddollar 1 \, adddollar 2 \, adddollar 3 \, adddollar 4 \, adddollar 5 \, adddollar 6 \, adddollar 7 \, adddollar 8 \, adddollar 9;
#X obj 166 44 t b b b;
#X msg 359 79 set 1;
#X connect 0 0 5 0;
#X connect 1 0 25 0;
#X connect 3 0 9 0;
#X connect 3 1 9 2;
#X connect 4 0 9 0;
#X connect 4 1 9 1;
#X connect 5 0 22 0;
#X connect 5 1 9 3;
#X connect 6 0 13 0;
#X connect 7 0 8 0;
#X connect 8 0 22 0;
#X connect 8 1 9 4;
#X connect 9 0 23 0;
#X connect 10 0 17 0;
#X connect 11 0 9 0;
#X connect 12 0 4 0;
#X connect 13 0 3 0;
#X connect 14 0 18 0;
#X connect 15 0 19 0;
#X connect 16 0 20 0;
#X connect 17 0 22 0;
#X connect 17 1 9 5;
#X connect 18 0 21 0;
#X connect 18 1 9 6;
#X connect 19 0 21 0;
#X connect 19 1 9 7;
#X connect 20 0 21 0;
#X connect 20 1 9 8;
#X connect 21 0 22 0;
#X connect 22 0 9 0;
#X connect 23 0 2 0;
#X connect 24 0 2 0;
#X connect 25 0 6 0;
#X connect 25 1 26 0;
#X connect 25 2 24 0;
#X connect 26 0 15 0;
#X coords 0 -1 1 1 330 30 2 100 100;
#X restore 52 296 pd view;
#X text 309 229 azimuth and elevation are in degree [°];
#X connect 16 0 15 0;
#X connect 17 0 15 0;
#X connect 18 0 15 0;
#X connect 19 0 15 0;
#X connect 20 0 15 0;
#X connect 22 0 15 0;
#X connect 23 0 20 0;
#X connect 25 0 17 0;
#X connect 26 0 18 0;
#X connect 27 0 16 0;
#X connect 28 0 19 0;
#X restore 30 612 pd more viewing;
#X text 17 211 message to send before creation :;
#X text 17 462 message to send after creation :;
#X text 29 387 buffer 2|1 : set buffer-rendering mode to double (default) or single (not clearing buffer);
#X text 456 60 reset settings and;
#X text 18 417 message regarding creation :;
#X obj 455 356 tgl 15 1 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X text 474 357 rotate objects;
#X text 554 196 destroy window;
#X text 484 177 (stop rendering and);
#X text 457 83 and start rendering;
#X text 456 72 create window with specific size;
#X text 29 522 color <r> <g> <b> :;
#X text 30 166 1st argument : number of frames per second (default 20);
#X text 28 69 [gemwin] allows you to interact with Gem's output window. It passes various messages to the window manager \, controlling the attributes of the window and controls the render-cycle. Multiple instances of this object can interact with separate windows.;
#X text 30 177 2d argument : context name;
#X text 443 457 see also examples/14.multiple_windows;
#X msg 490 260 color \$1 \$1 \$1 \$1;
#N canvas 484 243 450 300 META 0;
#X obj 10 25 declare -lib Gem;
#X text 10 45 DESCRIPTION access to the window manager;
#X text 10 65 KEYWORDS Gem window;
#X text 10 85 AUTHOR IOhannes m zmölnig;
#X text 10 105 LICENSE GPL-2.0-or-later;
#X restore 558 8 pd META;
#X connect 11 0 10 0;
#X connect 12 0 10 0;
#X connect 21 0 10 0;
#X connect 34 0 63 0;
#X connect 37 0 10 0;
#X connect 52 0 36 0;
#X connect 63 0 10 0;
