I think your right - I’m better off generating the waveforms (probably as the user selects them) at a given resolution, then just running a phasor over it… (probably line)
that way I can also do any maths I want whist during the generation stage…
You can try something like this if you want to send a bang at any time to get the current value of a phasor:
If you are always going to be running it on a metro you can get rid of the timer and just send the period of the metro with every bang.
Then you could use [sin] or an equation/look-up table to generate any LFO shape.