#N canvas 323 179 845 474 12; #X obj 11 249 tabread4~ array99; #N canvas 0 0 450 300 (subpatch) 0; #X array array99 10 float 3; #A 0 -0.5 -0.5 -0.5 0.5 0.5 0.5 0 0 0 0; #X coords 0 1 10 -1 250 200 1; #X restore 561 167 graph; #X text 127 21 4-point-interpolating table lookup; #X obj 11 337 snapshot~; #X obj 30 311 metro 200; #X obj 11 124 sig~; #X floatatom 11 98 6 0 10 0 - - -; #X obj 30 285 r readout; #X floatatom 11 363 0 0 0 0 - - -; #X text 59 92 incoming signal is index. Indices should range from 1 to (size-2) so that the 4-point interpolation is meaningful. You can shift-drag the number box to see the effect of interpolation.; #X msg 23 161 set array99; #X text 113 160 "set" message permits you to switch between arrays ; #X text 139 249 creation argument initializes array name; #X text 11 403 see also the "array" tutorial in section 2 of the Pd documentation \, and these objects:; #X obj 47 21 tabread4~; #X text 563 16 click here to test; #X obj 12 442 tabwrite~; #X obj 157 442 tabread; #X obj 216 442 tabwrite; #X obj 281 442 tabsend~; #X obj 346 442 tabreceive~; #X text 7 58 Tabread4~ is used to build samplers and other table lookup algorithms. The interpolation scheme is 4-point polynomial.; #X obj 83 442 tabplay~; #X text 626 451 updated for Pd version 0.42; #X msg 582 40 \; readout 1 \; pd dsp 1 \;; #X floatatom 111 190 3 0 10 0 - - -; #X text 19 205 signal input; #X text 138 183 inlet sets onset into table. You can use this to improve the accuracy of indexing into the array. See B15.tabread4~-onset.pd for details.; #X connect 0 0 3 0; #X connect 3 0 8 0; #X connect 4 0 3 0; #X connect 5 0 0 0; #X connect 6 0 5 0; #X connect 7 0 4 0; #X connect 10 0 0 0; #X connect 25 0 0 1;