#N canvas 39 37 931 626 10; #X obj 58 31 cnv 15 15 15 empty empty vasp.frames= 0 10 1 14 -262144 -1 0; #N canvas 0 0 450 300 graph1 0; #X array bufsfram1 88200 float 0; #X coords 0 1 88199 -1 300 100 1; #X restore 544 107 graph; #N canvas 0 0 392 216 init 0; #X obj 33 19 loadbang; #X msg 33 73 \; \$1 xticks 0 4410 10 \; \$1 xlabel 1.1 0 22050 44100 66150 88200 \; \$1 yticks 0 0.25 2 \; \$1 ylabel 94000 -1 -0.5 0 0.5 1; #X msg 33 45 symbol bufsfram1; #X msg 140 45 symbol bufsfram2; #X connect 0 0 2 0; #X connect 0 0 3 0; #X connect 2 0 1 0; #X connect 3 0 1 0; #X restore 798 533 pd init; #X obj 57 402 vasp.update; #X text 113 443 abbreviation; #N canvas 0 0 450 300 graph1 0; #X array bufsfram2 88200 float 0; #X coords 0 1 88199 -1 300 100 1; #X restore 545 227 graph; #X text 56 87 argument/right inlet: value in samples; #X obj 57 442 vasp.f+; #X obj 55 559 VASP-HELP; #X obj 57 378 vasp.noise; #X obj 58 200 vasp.update; #X msg 58 153 vasp bufsfram1; #X msg 57 261 vasp bufsfram1; #X obj 57 284 vasp.frames= 0.7; #X obj 58 176 vasp.= env -1 0 1 44100 -1 88200; #X floatatom 148 305 12 0 0 0 - - -; #X text 57 104 right outlet: frames relatively to the starting point of the search; #X text 147 319 since the search runs from the end to the left \, this value is negative; #X obj 57 356 vasp.-> bufsfram2; #X obj 57 502 vasp.o=; #X obj 190 148 bng 15 250 50 0 empty empty empty 0 -6 0 8 -24198 -1 -1; #X text 222 148 1 generate a ramp; #X obj 190 260 bng 15 250 50 0 empty empty empty 0 -6 0 8 -24198 -1 -1; #X text 218 274 the value 0.7 appears in the ramp; #X obj 540 400 cnv 15 15 15 empty empty --> 0 10 0 14 -262144 -24198 0; #X msg 562 499 vasp bufsfram2; #N canvas 249 259 328 183 clear 0; #X obj 74 54 inlet; #X obj 74 77 vasp.= 0; #X obj 74 100 vasp.u; #X obj 168 53 r \$0-clear; #X msg 168 76 vasp bufsfram2; #X obj 168 99 vasp.= 0; #X connect 0 0 1 0; #X connect 1 0 2 0; #X connect 3 0 4 0; #X connect 4 0 5 0; #X restore 562 525 pd clear; #X text 537 376 3 more features!; #X text 56 56 search for a value (starting at the end) and set the length of the vasp according to it; #X text 55 482 related objects:; #X obj 139 502 vasp.f; #X obj 204 502 vasp.s; #N canvas 77 60 522 606 dir_and_slope 0; #X text 46 56 forward; #X text 48 154 backward; #X text 31 22 search direction; #X text 58 369 both; #X text 28 401 negative; #X text 58 337 positive; #X text 28 314 target slope; #X text 46 99 both (nearest); #X obj 185 228 vasp.noise; #X obj 185 249 vasp.u; #X msg 110 156 dir -1; #X msg 111 121 dir 0; #X msg 110 59 dir 1; #X obj 185 90 t a b; #X obj 210 111 bng 15 250 50 0 \$0-clear empty empty 0 -6 1152 8 -262144 -1 -1; #X text 228 111 (clear); #X floatatom 224 177 12 0 0 0 - - -; #X msg 126 336 slope 1; #X msg 110 367 slope 0; #X msg 97 399 slope -1; #X obj 239 355 t a b; #X obj 264 376 bng 15 250 50 0 \$0-clear empty empty 0 -6 1152 8 -262144 -1 -1; #X text 282 376 (clear); #X floatatom 283 426 12 0 0 0 - - -; #X text 29 290 find values with positive and/or negative slope; #X obj 185 197 vasp.-> bufsfram2; #X obj 239 481 vasp.noise; #X obj 239 502 vasp.u; #X obj 239 450 vasp.-> bufsfram2; #X obj 239 400 vasp.f= 0.2; #X obj 185 153 vasp.f= 0; #X msg 185 71 vasp 44101 bufsfram1; #X msg 239 336 vasp 0 bufsfram1; #X text 40 438 query; #X msg 109 436 getslope; #X obj 369 424 prepend set; #X msg 368 445; #X obj 317 175 prepend set; #X msg 316 196; #X text 50 191 query; #X msg 109 191 getdir; #X connect 8 0 9 0; #X connect 10 0 30 0; #X connect 11 0 30 0; #X connect 12 0 30 0; #X connect 13 0 30 0; #X connect 13 1 14 0; #X connect 17 0 29 0; #X connect 18 0 29 0; #X connect 19 0 29 0; #X connect 20 0 29 0; #X connect 20 1 21 0; #X connect 25 1 8 0; #X connect 26 0 27 0; #X connect 28 1 26 0; #X connect 29 0 28 0; #X connect 29 1 23 0; #X connect 29 2 35 0; #X connect 30 0 25 0; #X connect 30 1 16 0; #X connect 30 2 37 0; #X connect 31 0 13 0; #X connect 32 0 20 0; #X connect 34 0 29 0; #X connect 35 0 36 0; #X connect 37 0 38 0; #X connect 40 0 30 0; #X restore 588 403 pd dir_and_slope; #X text 218 259 2 generate noise up to the position where; #N canvas 80 75 458 321 incl 0; #X obj 168 260 vasp.noise; #X obj 168 281 vasp.u; #X obj 168 214 vasp.o?; #X obj 170 135 t a b; #X obj 195 161 bng 15 250 50 0 \$0-clear empty empty 0 -6 1152 8 -262144 -1 -1; #X text 213 161 (clear); #X floatatom 261 211 5 0 0 0 - - -; #X text 24 17 include current sample; #X obj 170 109 vasp.u; #X msg 68 93 incl 0; #X msg 68 143 incl 1; #X text 21 73 don't include (default); #X text 20 126 do include; #X text 21 188 query; #X msg 68 189 getincl; #X obj 300 210 prepend set; #X msg 170 61 vasp bufsfram1; #X msg 168 239 vasp bufsfram2 \$1; #X obj 170 86 vasp.= env 0.5 40000 -0.5 60000; #X msg 301 231; #X obj 170 185 vasp.frames= -0.5; #X connect 0 0 1 0; #X connect 2 0 17 0; #X connect 3 0 20 0; #X connect 3 1 4 0; #X connect 8 0 3 0; #X connect 9 0 20 0; #X connect 10 0 20 0; #X connect 14 0 20 0; #X connect 15 0 19 0; #X connect 16 0 18 0; #X connect 17 0 0 0; #X connect 18 0 8 0; #X connect 20 0 2 0; #X connect 20 1 6 0; #X connect 20 2 15 0; #X restore 588 428 pd incl; #X obj 540 430 cnv 15 15 15 empty empty --> 0 10 0 14 -262144 -24198 0; #X connect 9 0 3 0; #X connect 11 0 14 0; #X connect 12 0 13 0; #X connect 13 0 18 0; #X connect 13 1 15 0; #X connect 14 0 10 0; #X connect 18 1 9 0; #X connect 20 0 11 0; #X connect 22 0 12 0; #X connect 25 0 26 0;