The TV is easy - it’s conceptually the same as how a normal TV works. The incoming LFO scans from top to bottom, left to right (if you have a saw wave plugged in), and whatever the values are present at the color and brightness inputs when the scan hits each pixel are grabbed by a sample and hold and become the new values for the output.
The way yours works is similar, but it just has a fade time associated with it. The “sample” is the reset timer.
You can adjust the length of fade time by using this expression:
fadeTime is a knob,
maxTime is the maximum number of seconds you want to keep the light lit, and
timer is the timer node that you reset.
The way it works now is great for modulation signals, but if you plug an audio signal in there, it can get messy quick with a lot of the grid just being solid white. If you shorten the draw time then you can start picking up on the Lissajous patterns.
You can see it at work in this patch - the beam control adjusts how long the lights stay lit. It’s a neat control so you can see where it is instantaneously, or you can see the average swing of the LFO.
Complex LFO.audulus (362.1 KB)
The Chaos Decay modules in the library also use the same principle to create decay gates.