hello frank,
thanks for trying this object.
Frank Barknecht wrote:
Hi,
I have a couple of questions regarding the [pmpd] object. It is not quite clear to me, what the messages to this object mean exactly. Actually I'm very confused about them.
i'm also very confused. ;-) the aim of pmpd version 0.06 was only to make a prototype and think about it.
the thing that is clear for me now is that is not really usefull to have pmpd and pmpd~ object with exactly the same option (like it is now).
i think in the future i'll split pmpd~ on diferents object (modal~, scan~ and pmpd~)
As I see it, there are basically four messages possible to create the dynamic system: mass, link, in, out.
All of these take IDs as arguments. I don't understand the meaning of those IDs. For example to create a mass, one uses messages like:
mass ID MASS X
MASS and X are easy, but what is this "ID" used for?
id is an identifiant for the masses. (and for the link)
with old pmpd version : when you create a mass object, the parametter are a name, masse and position : the identifiant (id) is here to replace the name of the mass.
you can set the position of a mass at any time by sending a message addressing to the id. this allow you to set position of 1 or more mass in the same time regarding to the stucture...
id is not very really usefull yet. i would like to have a string as id, but a float was faster to code for this prototype.
"link" also takes IDs as argument, but it seems to ignore the ID given to a mass on creation, instead it seems to use its own IDs and it has an ID itself:
link LINK-ID MASS1-ID MASS2-ID K D
in fact it's : link LINK-ID MASS1-creation_number MASS2-creation_number K D
creation_number is 0 for the 1st mass, 1 for the next etc...
2 mass can have the same id (mabee that will change). so link use the creation order of the mass.
i know it's not a very good solution, and i'll be very happy if you have sugestion...
the performances are better this way than with the old way, but i'm not satisfied with usability...
Where do I get the mass IDs from? In my experiments, it seems just have to keep track of them myself, and they have nothing to do with the ID I gave to a mass earlier. Or do I get it wrong?
your right.
Outlet creation (and inlet creation respectively): As I understand it, the format is:
out OUT-ID OUTLET MASS-ID AMPLITUDE
AMPLITUDE seems to be a scaling factor.
yep, scale is a better word. (it's a problem with my bad english)
OUT-ID I don't understand at all: what use does it have?
no one yet. but if you would change the scale factor, then you have to send a message to this specific "out" object. id is the way to address this "out"
if you are familiar with modal synthesis, you'll understand the way is is now.
Am I right to assume that OUTLET is numbered from 0 to max-outlet-number, where max-outlet-number is the second argument of pmpd minus one?
yes : [pmpd 3 4] will create an object with 3 inlet and 4 outlet. so you can create any number of "out" you wish, but they have to be connected to the outlet 0 to 3. (4 outlet)
And then MASS-ID: Does it start from 0 as well? Or from 1? Where do I get this ID from?
you have to choose the id you wish (i think negative id is only for mass that should not move (fixed)).
In my experiments, it seems to have to be the MASS-ID I used when creating the "link"s.
Sorry for my confusion...
well, there is no good documentation, so it's my fault.
i did not make anythig new since 0.06, but new developement should be done befor this summer. so pmpd and pmpd~ will change, and i'm not sure compatibility will be a priority, so use this 2 object at your own risk. (sorry, i'm not happy with the way they are now).
cyr
Ciao