[PD] [PD-announce] pd 0.43-3 released

João Pais jmmmpais at googlemail.com
Mon Jul 9 10:16:12 CEST 2012


yes, now it makes more sense. that could be very sexy, as besides all the  
interesting ideas, it would be possible to have a only-graphical version  
of Pd running, for people who are only users.
it might not be very practical for cases where canvases have more than a  
certain number of scalars (I have some with a couple thousands), but very  
nice for other issues.

João

> When you create an abstraction, you basically save a patch that is a  
> template
> for all instances of the abstraction which you will create later.  [f  
> $1] gets filled
> in with the first arg, [symbol $2] with the second arg, and so on.
>
> With my idea, you create a scalar that has an associated canvas (similar  
> to
> an abstraction), and that canvas has access to the field values for that  
> scalar.
>
> Example: let's say you have [struct foo float y symbol blah canvas bar],  
> and
> have a subpatch [pd bar] that is a template for the field "bar" which is  
> just a
> canvas.  So when you create a scalar foo, that scalar has a y variable--  
> which is a
> float; a blah variable-- which is a symbol; and a bar variable-- which  
> is a canvas.
> Imagine a hypothetical object inside that scalar's canvas called [getmy  
> y], and
> when you bang it you get the y value associated with _this_ scalar.  Now  
> imagine
> this inside bar:
>
> [getmy y]
> |
> [mtof]
> |
> [osc~]
> |
> [catch~ bus]
>
> Now if you instantiate 16 scalars, each one of them has an associated  
> oscillator
> that gets its pitch from that scalar's y value.  In other words, each  
> scalar also
> has a canvas that holds within it the means to produce sound from the y  
> value
> that you see.
>
> I'm just assuming here that [getmy] would work like the outlet of  
> [struct]-- that is,
> it sends out a message when the y value for that scalar is updated.  (Or  
> alternatively
> when it is banged.)
>
> Better yet, imagine using "foo" as the template for another struct as in  
> the following:
> [struct container float x float y array z foo]
>
> Now you can create/destroy voices in an oscbank using [setsize]!  Of  
> course I'm
> skipping over lots of details, like you'd still have to rebuild the dsp  
> graph, and how
> loadbang would or woudn't work when you instantiate a scalar with a  
> canvas field,
> etc., etc.
>
> Hopefully some of that makes sense.
>
> -Jonathan
>
>>
>> João
>>


-- 
Friedenstr. 58
10249 Berlin (Deutschland)
Tel +49 30 42020091 | Mob +49 162 6843570
Studio +49 30 69509190
jmmmpais at googlemail.com | skype: jmmmpjmmmp



More information about the Pd-list mailing list