[PD] canvasindex depth mystery

oliver oliver at klingt.org
Mon Jun 12 14:07:15 CEST 2017


hi,

just discovered something in IEMGUTS [canvasindex] that might be a bug
(or maybe i didn't get the concept ...)

[canvasindex]' help patch shows how to get the total number of objects 
inside a patcher hierarchy (right outlet). this doesn't work on my 
system (Win 7 , 64 bits, PD 0.47.1) - the ouput shows nothing.

however, it DOES output the right info when i change the subpatches 
argument to "0".

but as far as i understood, according to IEMGUTS parent-depth numbering, 
an argument of 1 should go "one level up" to get its infos, while "0" 
means "this level".

attached is an example patch that demonstrates what i mean. 
[canvasindex] works, but with a "depth level shift", where the 
parent-depth "0" does what usually parent-depth "1" does.

can somebody else reproduce this ?

best

oliver
-------------- next part --------------
#N canvas 316 393 526 352 10;
#X declare -stdpath iemguts;
#X msg 35 70 bang;
#X floatatom 35 117 5 0 0 0 - - -, f 5;
#N canvas 0 50 450 300 objectcount 0;
#X obj 75 48 inlet;
#X obj 75 189 outlet;
#X obj 75 129 canvasindex 1;
#X connect 0 0 2 0;
#X connect 2 1 1 0;
#X restore 35 93 pd objectcount;
#X msg 35 176 bang;
#X floatatom 35 223 5 0 0 0 - - -, f 5;
#N canvas 0 50 450 300 objectcount 0;
#X obj 75 48 inlet;
#X obj 75 189 outlet;
#X obj 75 129 canvasindex 0;
#X connect 0 0 2 0;
#X connect 2 1 1 0;
#X restore 35 199 pd objectcount;
#X text 131 199 but this does;
#X obj 35 16 1;
#X obj 63 16 2;
#X obj 92 16 3;
#X obj 120 16 4;
#X obj 149 16 5;
#X obj 177 16 6;
#X obj 206 16 7;
#X obj 235 16 8;
#X obj 13 223 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 15 117 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144 -1
-1;
#X obj 123 252 bng 15 250 50 0 empty empty empty 17 7 0 10 -262144
-1 -1;
#X obj 35 276 canvasindex 2;
#X obj 123 276 canvasindex 1;
#X obj 211 276 canvasindex 0;
#X floatatom 110 299 5 0 0 0 - - -, f 5;
#X floatatom 198 299 5 0 0 0 - - -, f 5;
#X floatatom 286 299 5 0 0 0 - - -, f 5;
#X text 33 52 [canvasindex 1] inside:;
#X text 32 155 [canvasindex 0] inside:;
#X obj 304 15 declare -stdpath iemguts;
#X text 293 34 PD 0.47.1 \, Windows 7 \, 64 bits;
#X text 144 250 those obviously don't work here as well;
#X text 129 89 for some strange reason the parent-depth structure is
shifted by 1 \, so this doesn't work, f 33;
#X connect 0 0 2 0;
#X connect 2 0 1 0;
#X connect 2 0 16 0;
#X connect 3 0 5 0;
#X connect 5 0 4 0;
#X connect 5 0 15 0;
#X connect 17 0 18 0;
#X connect 17 0 19 0;
#X connect 17 0 20 0;
#X connect 18 1 21 0;
#X connect 19 1 22 0;
#X connect 20 1 23 0;


More information about the Pd-list mailing list