#N canvas 469 318 747 550 10;
#X declare -lib Gem;
#X obj 539 58 declare -lib Gem;
#X obj 7 115 cnv 15 450 100 empty empty empty 20 12 0 14 #e0e0e0 #404040 0;
#X obj 468 114 cnv 15 200 400 empty empty empty 20 12 0 14 #dce4fc #404040 0;
#X obj 8 226 cnv 15 450 30 empty empty empty 20 12 0 14 #bcbcbc #404040 0;
#X text 464 58 GEM object;
#X text 467 95 Example:;
#X obj 7 265 cnv 15 450 100 empty empty empty 20 12 0 14 #e0e0e0 #404040 0;
#X obj 481 140 gemhead;
#X obj 481 181 part_head;
#X obj 481 118 tgl 15 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000 0 1;
#X text 39 88 Class: Particle System;
#X obj 481 222 part_velocity point 0 0.1 0;
#X obj 481 202 part_source 1;
#X obj 277 402 _gemwin;
#X obj 508 341 part_information, f 24;
#X text 39 58 Synopsis [part_move];
#X text 28 266 [part_draw] and [part_render] do the movement by themselves \, so you won't need this object if you use them.;
#X text 29 300 otoh \, [part_information] will not move the particles.;
#X text 31 321 the misnomed [part_info] combines [part_move] and [part_information] (and is built as an abstraction from the two objects).;
#X obj 173 494 part_info, f 11;
#X obj 481 280 part_move;
#X obj 481 490 part_killold 10;
#X obj 508 431 translate 1 0 0 0;
#X obj 508 406 colorRGB 1 1 1;
#X obj 558 381 != 3;
#X obj 481 311 t a a;
#N canvas 735 461 450 300 demux 0;
#X obj 51 152 t a a;
#X obj 96 177 == 0;
#X obj 51 71 inlet;
#X obj 51 228 outlet;
#X obj 51 205 spigot 1;
#X obj 156 174 spigot 0;
#X obj 156 197 outlet;
#X obj 174 66 inlet;
#X obj 100 100 hradio 18 1 0 2 \$0-demux \$0-demux empty 0 -9 0 10 #fcfcfc #000000 #000000 0;
#X obj 174 89 s \$0-demux;
#X obj 96 136 r \$0-demux;
#X obj 196 136 r \$0-demux;
#X connect 0 0 4 0;
#X connect 0 1 5 0;
#X connect 1 0 4 1;
#X connect 2 0 0 0;
#X connect 4 0 3 0;
#X connect 5 0 6 0;
#X connect 7 0 9 0;
#X connect 10 0 1 0;
#X connect 11 0 5 1;
#X coords 0 -1 1 1 36 18 2 100 100;
#X restore 481 243 pd demux;
#X text 24 130 [part_move] moves the particles according to their current velocity and constraints \, and updates their ages!;
#X obj 508 451 cube 0.2 \; draw line;
#X obj 481 161 translateXYZ 0 -3 0;
#X text 104 494 see also;
#X connect 7 0 29 0;
#X connect 8 0 12 0;
#X connect 9 0 7 0;
#X connect 11 0 26 0;
#X connect 12 0 11 0;
#X connect 14 0 23 0;
#X connect 14 1 24 0;
#X connect 14 2 22 2;
#X connect 20 0 25 0;
#X connect 22 0 28 0;
#X connect 23 0 22 0;
#X connect 24 0 23 2;
#X connect 24 0 23 3;
#X connect 25 0 21 0;
#X connect 25 1 14 0;
#X connect 26 0 20 0;
#X connect 26 1 25 0;
#X connect 29 0 8 0;
