[PD] changing the position of arrays dynamically

João Pais jmmmpais at googlemail.com
Mon Dec 30 20:24:35 CET 2013


I've done an abstraction that does this, and more. The initial version was posted in the pd list some time ago: http://lists.puredata.info/pipermail/pd-list/2013-12/105216.html

> Thanks João,
>
> I'd love to see an example of that.
> Best,
> Peiman
>
>
>
>>
>> www.peimankhosravi.co.uk || RSS Feed || Concert News
>
>
> On 10 November 2013 11:58, João Pais <jmmmpais at googlemail.com> wrote:
>>>> you could also use data structures to copy the arrays to the display, and superimpose and hide whichever necessary, e.g. also using different colors/>>thickness for each array. I don't have the time now to make an example, though. Maybe during the next days.
>>
>>
>>> OK, here it is.
>>> It needs two externals: 'tabletool' and 'Popup'. (OSX builds included in the zip file but I think they're distributed in pd_extended, in which >>>case just modify [declare -path] in the patch.)
>>>
>>> Best,
>>> Peiman
>>>
>>>
>>>
>>>
>>>
>>>>>>
>>>>>> www.peimankhosravi.co.uk || RSS Feed || Concert News
>>>
>>>
>>> On 9 November 2013 13:11, peiman khosravi <peimankhosravi at gmail.com> wrote:
>>>> This is great. I also have a working example that I'll send later today once I've tidied it up. I'm using the tabletool external with >>>>horizontal zooming in and out of the array too.
>>>> Will send it in a couple of hours.
>>>>>>>> P
>>>>
>>>>
>>>>
>>>>>>>>
>>>>>>>> www.peimankhosravi.co.uk || RSS Feed || Concert News
>>>>
>>>>
>>>> On 9 November 2013 12:06, michael noble <looplog at gmail.com> wrote:
>>>>>
>>>>> On Sat, Nov 9, 2013 at 6:42 PM, Julian Brooks <jbeezez at gmail.com> wrote:
>>>>>> Michael - would you mind knocking up a quick example
>>>>>
>>>>> This seems to work (roughly) so far as I understand Peiman's original request correctly. I can't vouch for it being the most efficient or bug-free >>>>>solution. It polls the buffer array using a metro counter so that changes to the active table are updated on the fly. Switching the active table just >>>>>dumps that table to the buffer array.
>>>>>
>>>>>
>>>>>
>>>>> #N canvas 555 248 450 300 10;
>>>>> #N canvas 553 638 450 300 gui 0;
>>>>> #N canvas 1 52 450 250 (subpatch) 0;
>>>>> #X array buffer 100 float 3;
>>>>> #A 0 -0.585714 -0.585714 -0.585714 -0.585714 -0.585714 -0.585714 -0.585714
>>>>> -0.585714 -0.585714 -0.585714 -0.585714 -0.585714 -0.585714 -0.585714
>>>>> -0.585714 -0.585714 -0.585714 -0.585714 -0.585714 -0.585714 -0.571428
>>>>> -0.571428 -0.571428 -0.557143 -0.557143 -0.557143 -0.557143 -0.557143
>>>>> -0.557143 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857 -0.542857
>>>>> -0.542857 -0.471428;
>>>>> #X coords 0 1 99 -1 200 140 1;
>>>>> #X restore 100 50 graph;
>>>>> #X obj 100 211 hradio 25 1 0 8 tablenum empty empty 0 -8 0 10 -262144
>>>>> -1 -1 0;
>>>>> #X coords 0 -1 1 1 200 200 2 100 50;
>>>>> #X restore 48 70 pd gui;
>>>>> #N canvas 1 52 450 300 tables 1;
>>>>> #X obj 46 27 table x1;
>>>>> #X obj 46 49 table x2;
>>>>> #X obj 46 71 table x3;
>>>>> #X obj 46 93 table x4;
>>>>> #X obj 46 115 table x5;
>>>>> #X obj 46 137 table x6;
>>>>> #X obj 46 159 table x7;
>>>>> #X obj 46 181 table x8;
>>>>> #X restore 294 68 pd tables;
>>>>> #N canvas 1048 269 755 530 guts 0;
>>>>> #X obj 236 18 r tablenum;
>>>>> #X msg 302 101 set x\$1;
>>>>> #X obj 399 324 tabread;
>>>>> #X obj 270 82 + 1;
>>>>> #X obj 461 322 tabwrite;
>>>>> #X obj 271 332 t f f;
>>>>> #X obj 292 437 tabwrite buffer;
>>>>> #X obj 327 393 swap;
>>>>> #X obj 222 135 metro 1;
>>>>> #X obj 222 165 f 0;
>>>>> #X obj 274 182 + 1;
>>>>> #X msg 85 156 0;
>>>>> #X obj 181 234 sel 99;
>>>>> #X obj 222 203 t f f;
>>>>> #X obj 584 137 f 0;
>>>>> #X obj 636 154 + 1;
>>>>> #X obj 588 191 mod 100;
>>>>> #X obj 600 233 t f f;
>>>>> #X obj 515 294 tabread buffer;
>>>>> #X obj 593 64 loadbang;
>>>>> #X obj 398 246 t a a;
>>>>> #X msg 515 54 1;
>>>>> #X msg 545 19 0;
>>>>> #X obj 584 107 metro 1;
>>>>> #X obj 236 54 t b f b;
>>>>> #X obj 128 96 t b f f;
>>>>> #X connect 0 0 24 0;
>>>>> #X connect 1 0 20 0;
>>>>> #X connect 2 0 7 1;
>>>>> #X connect 3 0 1 0;
>>>>> #X connect 5 0 7 0;
>>>>> #X connect 5 1 2 0;
>>>>> #X connect 7 0 6 0;
>>>>> #X connect 7 1 6 1;
>>>>> #X connect 8 0 9 0;
>>>>> #X connect 9 0 10 0;
>>>>> #X connect 9 0 13 0;
>>>>> #X connect 10 0 9 1;
>>>>> #X connect 11 0 25 0;
>>>>> #X connect 12 0 11 0;
>>>>> #X connect 13 0 12 0;
>>>>> #X connect 13 1 5 0;
>>>>> #X connect 14 0 15 0;
>>>>> #X connect 14 0 16 0;
>>>>> #X connect 15 0 14 1;
>>>>> #X connect 16 0 17 0;
>>>>> #X connect 17 0 18 0;
>>>>> #X connect 17 1 4 1;
>>>>> #X connect 18 0 4 0;
>>>>> #X connect 19 0 23 0;
>>>>> #X connect 20 0 2 0;
>>>>> #X connect 20 1 4 0;
>>>>> #X connect 21 0 23 0;
>>>>> #X connect 22 0 23 0;
>>>>> #X connect 23 0 14 0;
>>>>> #X connect 24 0 8 0;
>>>>> #X connect 24 1 3 0;
>>>>> #X connect 24 2 22 0;
>>>>> #X connect 25 0 21 0;
>>>>> #X connect 25 1 9 1;
>>>>> #X connect 25 2 8 0;
>>>>> #X restore 299 138 pd guts;
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20131230/c1aac6ef/attachment-0001.htm>


More information about the Pd-list mailing list