I think I've tested all methods described by Cyrille for a project (https://gitorious.org/pd-gem-ui/pd-gem-ui). The last one with [GEMglVertex2f] and iteration in a table seems to be the most efficient.

So I made an oscilloscope in Gem according to what Cyrille and Nicolas said in attachments, it could help too.

Best

Jerome
#N canvas 520 81 570 658 10;
#N canvas 0 22 389 370 CPU 0;
#X floatatom 170 259 0 0 0 0 - - -;
#X obj 170 171 cputime;
#X obj 170 31 loadbang;
#X obj 170 115 metro 1000;
#X msg 170 59 1;
#X floatatom 170 87 0 0 0 0 - - -;
#X obj 170 143 t b b;
#X obj 170 231 * 0.1;
#X obj 170 200 int;
#X text 215 87 <-- on/off;
#X text 130 310 CPU load in percent;
#X obj 170 283 outlet;
#X connect 0 0 11 0;
#X connect 1 0 8 0;
#X connect 2 0 4 0;
#X connect 3 0 6 0;
#X connect 4 0 5 0;
#X connect 5 0 3 0;
#X connect 6 0 1 0;
#X connect 6 1 1 1;
#X connect 7 0 0 0;
#X connect 8 0 7 0;
#X restore 33 267 pd CPU;
#X floatatom 33 289 5 0 0 1 % - -;
#X text 298 121 Test signal;
#X text 31 123 Gem on/off;
#X text 31 345 ---------------------------------------;
#X text 29 248 ---------------------------------------;
#X text 31 241 CPU;
#N canvas 716 109 450 300 GEM 0;
#X msg 135 183 create \, 1;
#X msg 154 210 destroy;
#X obj 135 156 sel 1 0;
#X obj 135 68 gemkeyboard;
#X obj 135 121 tgl 15 0 empty empty empty 17 7 0 10 -257985 -1 -1 1
1;
#X obj 135 94 sel 9;
#X obj 220 78 key;
#X obj 220 114 sel 27;
#X obj 262 199 loadbang;
#X msg 262 224 reset;
#X obj 135 246 gemwin;
#X obj 356 121 inlet;
#X text 352 104 frame rate;
#X msg 356 146 frame \$1;
#X connect 0 0 10 0;
#X connect 1 0 10 0;
#X connect 2 0 0 0;
#X connect 2 1 1 0;
#X connect 3 0 5 0;
#X connect 4 0 2 0;
#X connect 5 0 4 0;
#X connect 6 0 7 0;
#X connect 7 0 4 0;
#X connect 8 0 9 0;
#X connect 9 0 10 0;
#X connect 11 0 13 0;
#X connect 13 0 10 0;
#X coords 0 -1 1 1 60 40 1 100 100;
#X restore 32 191 pd GEM;
#X floatatom 32 170 5 0 0 2 frame_rate - -;
#X text 129 123 Coordinate axis;
#X text 29 130 ---------------;
#X text 130 130 -----------------------;
#N canvas 531 201 450 300 AXIS 0;
#X obj 108 115 gemhead;
#X obj 119 176 rectangle 6 0.01;
#X obj 108 197 rectangle 0.01 6;
#X obj 108 135 color 1 0 0;
#X connect 0 0 3 0;
#X connect 3 0 2 0;
#X connect 3 0 1 0;
#X restore 132 146 pd AXIS;
#X text 30 85 (http://codelab.fr/2593);
#X obj 303 268 vsl 15 128 0 1 0 0 empty empty empty 0 -9 0 10 -257985
-1 -1 8509 1;
#X text 318 273 <- test;
#X text 320 363 (0.0 - 1.0);
#X obj 303 202 / 100;
#X obj 303 244 line;
#X obj 303 163 metro 200;
#X obj 303 145 tgl 15 0 empty empty empty 17 7 0 10 -257985 -1 -1 1
1;
#X msg 303 223 \$1 200;
#X obj 303 182 random 100;
#X obj 382 206 random 2;
#X text 298 130 ---------------------------------------;
#X obj 325 144 init 1;
#X obj 382 186 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 29 35 cnv 20 350 20 empty \$0-cnv-title gem_oscillo-help.pd
10 10 0 14 -1 -262144 0;
#X text 33 336 gem_oscillo;
#X text 30 60 Adapted from [poligone2D] ArNO Courcelle \, [gem_oscillo~]
Nicolas Montgermont and [mapping/last_n];
#X msg 39 365 size 200;
#X msg 49 388 dimen -2 0 2 1;
#X obj 245 474 metro 30;
#X obj 245 453 loadbang;
#X obj 288 501 f;
#X text 242 433 Sampling;
#X msg 68 464 color 1 0 1;
#X msg 75 487 alpha 0.4;
#X msg 57 411 x 2 \, y 1 \, w 4 \, h 4;
#X msg 81 535 on \$1;
#X obj 81 516 tgl 15 0 empty empty empty 17 7 0 10 -262144 -1 -1 0
1;
#X msg 81 558 render 50;
#X obj 39 595 gem_oscillo;
#X msg 64 441 line 10;
#X text 391 33 abel.jer...@free.fr \; GNU/GPLv3 \; 2012 \; http://jeromeabel.net
;
#X connect 0 0 1 0;
#X connect 8 0 7 0;
#X connect 14 0 34 1;
#X connect 17 0 21 0;
#X connect 18 0 14 0;
#X connect 19 0 22 0;
#X connect 20 0 19 0;
#X connect 21 0 18 0;
#X connect 22 0 17 0;
#X connect 23 0 21 0;
#X connect 25 0 20 0;
#X connect 26 0 23 0;
#X connect 30 0 42 0;
#X connect 31 0 42 0;
#X connect 32 0 34 0;
#X connect 33 0 32 0;
#X connect 34 0 42 1;
#X connect 36 0 42 0;
#X connect 37 0 42 0;
#X connect 38 0 42 0;
#X connect 39 0 42 0;
#X connect 40 0 39 0;
#X connect 41 0 42 0;
#X connect 43 0 42 0;
#N canvas 341 79 907 643 10;
#X floatatom 136 61 5 0 0 0 Width #0widthIn #0width;
#X floatatom 136 77 5 0 0 0 Height #0heightIn #0height;
#X floatatom 171 61 5 0 0 1 X #0xIn #0x;
#X floatatom 171 77 5 0 0 1 Y #0yIn #0y;
#X obj 576 58 loadbang;
#X obj 413 84 inlet;
#X obj 572 256 s \$0xIn;
#X obj 601 236 s \$0yIn;
#X obj 516 298 s \$0widthIn;
#X obj 544 276 s \$0heightIn;
#X obj 421 383 r \$0input;
#X obj 413 107 route float;
#X obj 413 223 s \$0input;
#X obj 82 312 translateXYZ;
#X obj 105 285 r \$0x;
#X obj 141 264 r \$0y;
#X floatatom 136 45 5 0 0 0 Line #0lineIn #0line;
#X floatatom 171 45 5 0 0 1 Size #0sizeIn #0size;
#X obj 657 136 s \$0lineIn;
#X obj 44 19 cnv 14 173 14 empty empty Gui 2 8 0 12 -228856 -99865
0;
#X obj 50 99 cnv 14 173 14 empty empty Processing 2 8 0 12 -228856
-99865 0;
#X obj 415 26 cnv 14 173 14 empty empty Communication 2 8 0 12 -228856
-99865 0;
#X text 413 39 Data and commands;
#X obj 421 462 list;
#X obj 421 508 list trim;
#X obj 421 484 list prepend 0;
#X obj 421 532 s \$0-scope;
#X obj 442 435 list split 200;
#X obj 606 361 table \$0-scope 200;
#X msg 544 438 resize \$1;
#X obj 421 405 *;
#X obj 447 406 r \$0height;
#X obj 31 414 GEMglEnd;
#X obj 152 378 GEMglBegin GL_LINE_STRIP;
#X obj 99 534 gemlist;
#X msg 126 410 0;
#X obj 99 456 until;
#X obj 99 481 f;
#X obj 130 481 + 1;
#X obj 99 608 GEMglVertex3f 0 0 0;
#X obj 99 504 t b f f;
#X obj 190 557 tabread \$0-scope;
#X obj 151 560 - 0.5;
#X obj 82 357 t a b a a;
#X obj 99 380 t b b;
#X obj 152 357 GEMglLineWidth 2;
#X obj 152 336 GEMglShadeModel GL_SMOOTH;
#X obj 99 432 f 200;
#X obj 151 535 / 199;
#X obj 178 447 - 1;
#X obj 257 357 r \$0line;
#X obj 151 584 * 8;
#X obj 177 584 r \$0width;
#X obj 419 363 cnv 14 173 14 empty empty Data 2 8 0 12 -228856 -99865
0;
#X obj 685 185 unpack f f f f;
#X obj 629 159 s \$0sizeIn;
#X obj 523 407 r \$0size;
#X obj 178 415 r \$0size;
#X obj 82 181 gemhead;
#X obj 82 237 alpha;
#X obj 82 208 colorRGB;
#X obj 488 110 route input w h x y size line dimen on render alpha
color;
#X obj 208 148 r \$0color;
#X obj 208 167 unpack f f f f;
#X obj 242 210 r \$0alpha;
#X obj 82 157 r \$0on;
#X obj 132 135 r \$0render;
#X msg 132 157 set \$1;
#X obj 714 161 s \$0on;
#X obj 742 141 s \$0render;
#X obj 770 166 s \$0alpha;
#X obj 809 143 s \$0color;
#X obj 458 164 r \$0on;
#X obj 516 223 * 2;
#X obj 544 223 * 2;
#X msg 576 82 w 2 \, h 1 \, size 165 \, width 2 \, line 3;
#X obj 458 82 inlet;
#X obj 141 285 -;
#X obj 413 191 spigot 1;
#X obj 180 285 / 2;
#X obj 180 264 r \$0height;
#X msg 556 517 const 0;
#X obj 556 484 loadbang;
#X obj 17 204 loadbang;
#X msg 17 225 1;
#X connect 4 0 75 0;
#X connect 5 0 11 0;
#X connect 10 0 30 0;
#X connect 11 0 78 0;
#X connect 11 1 61 0;
#X connect 13 0 43 0;
#X connect 14 0 13 1;
#X connect 15 0 77 0;
#X connect 23 0 25 0;
#X connect 23 0 27 0;
#X connect 24 0 26 0;
#X connect 25 0 24 0;
#X connect 27 0 23 1;
#X connect 27 2 23 1;
#X connect 29 0 26 0;
#X connect 30 0 23 0;
#X connect 31 0 30 1;
#X connect 34 0 39 0;
#X connect 35 0 37 1;
#X connect 36 0 37 0;
#X connect 37 0 38 0;
#X connect 37 0 40 0;
#X connect 38 0 37 1;
#X connect 40 0 34 0;
#X connect 40 1 48 0;
#X connect 40 2 41 0;
#X connect 41 0 39 2;
#X connect 42 0 51 0;
#X connect 43 0 32 0;
#X connect 43 1 44 0;
#X connect 43 2 46 0;
#X connect 43 3 34 1;
#X connect 44 0 47 0;
#X connect 44 1 35 0;
#X connect 45 0 33 0;
#X connect 46 0 45 0;
#X connect 47 0 36 0;
#X connect 48 0 42 0;
#X connect 49 0 48 1;
#X connect 50 0 45 1;
#X connect 51 0 39 1;
#X connect 52 0 51 1;
#X connect 54 0 6 0;
#X connect 54 1 7 0;
#X connect 54 2 73 0;
#X connect 54 3 74 0;
#X connect 56 0 27 1;
#X connect 56 0 29 0;
#X connect 57 0 47 1;
#X connect 57 0 49 0;
#X connect 58 0 60 0;
#X connect 59 0 13 0;
#X connect 60 0 59 0;
#X connect 61 1 73 0;
#X connect 61 2 74 0;
#X connect 61 3 6 0;
#X connect 61 4 7 0;
#X connect 61 5 55 0;
#X connect 61 6 18 0;
#X connect 61 7 54 0;
#X connect 61 8 68 0;
#X connect 61 9 69 0;
#X connect 61 10 70 0;
#X connect 61 11 71 0;
#X connect 62 0 63 0;
#X connect 63 0 60 1;
#X connect 63 1 60 2;
#X connect 63 2 60 3;
#X connect 63 3 60 4;
#X connect 64 0 60 4;
#X connect 65 0 58 0;
#X connect 66 0 67 0;
#X connect 67 0 58 0;
#X connect 72 0 78 1;
#X connect 73 0 8 0;
#X connect 74 0 9 0;
#X connect 75 0 61 0;
#X connect 76 0 78 0;
#X connect 77 0 13 2;
#X connect 78 0 12 0;
#X connect 79 0 77 1;
#X connect 80 0 79 0;
#X connect 81 0 26 0;
#X connect 82 0 81 0;
#X connect 84 0 59 0;
#X coords 0 0 1 1 125 75 0;
_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to