Me: I just need an animated bar graph thing. That's a bit like a level meter, right? People do this stuff in pd/gem all the time. I'll just that. It will be easiest.
Pure Data: Muahahahaha, lol

The translate object moves a graphical element to a new position. But it's not moving from 0,0 but relative from the last drawn object. This is evaluated not from top to bottom or left to right but from the order in which the programmer developed the program, so from what they wrote first. Deleted objects created during development are not garbage collected, so this is relative to objects that are no longer visible in code. Two identical looking source codes will come up with different results.

Ok, so this was (obviously) my mistake. Each gemhead object has a state containing data used to draw stuff. If you attach a translate to it, that changes a translation matrix stored IN THE GEMHEAD and NOT passed out the bottom of the translate object. Every translate object changes the matrix, cumulatively. The way to keep translations separate is to have separate gemheads for each individually translated object.


@celesteh You need the [separator] object to push and pop the stack and make behave sensibly. I've heard good things about ofelia too, is newer than gem so might have less baggage from history.

Sign in to participate in the conversation

Hometown is adapted from Mastodon, a decentralized social network with no ads, no corporate surveillance, and ethical design.