#N canvas 15 167 650 394 10; #X obj 133 168 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X floatatom 219 168 5 0 0 0 - - -; #X text 11 80 $f1 = hanning/hamming \; $f2 = current sample (from -1/2 window size to +1/2 window size) \; $f3 = window size in samples; #X obj 384 154 + 1; #X obj 21 200 expr $f1 + ((1 - $f1) * cos(((8 * atan(1)) * $f2) / $f3)) ; #X msg 21 159 0.5; #X obj 304 155 float; #X msg 302 261 0; #X obj 351 33 inlet draw(bang); #X obj 483 147 inlet windowsize; #X obj 21 138 inlet hamming(bang); #X obj 160 137 inlet hanning(bang); #X msg 65 160 0.54; #X obj 96 347 tabwrite \$1; #X text 138 19 Draw hanning or hamming window. Variable window size. First argument gives table name.; #X obj 307 126 metro 4; #X obj 311 234 select 512; #X obj 489 177 / 2; #X obj 491 205 * -1; #X msg 487 292 \$1; #X obj 467 75 inlet acdc(01); #X obj 490 96 select 0 1; #X obj 93 255 +; #X msg 127 235 0; #X obj 95 280 /; #X msg 125 260 1; #X msg 161 233 1; #X msg 162 263 2; #X msg 272 155 0; #X obj 352 57 t b b; #X obj 413 62 bng 15 250 50 0 empty empty empty 0 -6 0 8 -262144 -1 -1; #X obj 223 232 + 50; #X connect 0 0 4 0; #X connect 1 0 0 0; #X connect 1 0 4 1; #X connect 1 0 31 0; #X connect 3 0 6 1; #X connect 4 0 22 0; #X connect 5 0 4 0; #X connect 6 0 3 0; #X connect 6 0 1 0; #X connect 6 0 16 0; #X connect 7 0 15 0; #X connect 8 0 29 0; #X connect 9 0 4 2; #X connect 9 0 17 0; #X connect 10 0 5 0; #X connect 11 0 12 0; #X connect 12 0 4 0; #X connect 15 0 6 0; #X connect 16 0 7 0; #X connect 16 0 19 0; #X connect 17 0 18 0; #X connect 17 0 16 1; #X connect 17 0 31 1; #X connect 18 0 19 0; #X connect 19 0 6 1; #X connect 20 0 21 0; #X connect 21 0 23 0; #X connect 21 0 25 0; #X connect 21 1 26 0; #X connect 21 1 27 0; #X connect 22 0 24 0; #X connect 23 0 22 1; #X connect 24 0 13 0; #X connect 25 0 24 1; #X connect 26 0 22 1; #X connect 27 0 24 1; #X connect 28 0 6 1; #X connect 29 0 15 0; #X connect 29 1 28 0; #X connect 30 0 29 0; #X connect 31 0 13 1;