## Max curve~

Mar 30 2010 | 9:44 am
Hi,
Is there a max equivalent of the curve~ object? I'm guessing there is also a mathematical solution but I'm not really very good with that stuff.
cheers,

• Mar 30 2010 | 3:09 pm
You could try (line) to get your 0->1 ramp, and to get a variable exponential curve feed that into the base of (pow) and play around with the index/exponent
• Mar 31 2010 | 10:15 am
Hi thanks for your reply. I'm trying to implement a portamento/glide to go from one value to another - thought I'd expand on it a little. I tried your suggestion but there does not seem to be a curve occurring it seems to only scale the output. Which now that I think about it seems like an expected outcome for pow - do I need a more complex formula? Here's my very basic testing patch - in case there is anything I've done completely wrong.
• Mar 31 2010 | 1:49 pm
Ok I see what's happening but can't see an obvious solution... (line) is ramping from one note-on message to the next in its regular linear fashion and (pow) is raising the note message to ^y...
Using (pow) in the fashion I suggested only works for 0->1 control signals since 1^y is always 1 and 0.x^y is always less than 0.x, giving a curve from 0->1.
Have you thought of using function generator?
• Mar 31 2010 | 6:09 pm
i have made a bunch of such expressions ... but it is really bit difficult to have a set of expressions sitting between a multipoint ramp in order to turn all the linear moves of different ranges into s-curves ... i wouldnt do that!
what about using curve~ and converting to the signal to messages?
or do you the stuff for something nonrealtime.
(yeah i know, you loose the peak values that way)
-110
• Mar 31 2010 | 10:34 pm
you can use curve~, connect it to a number~ object and out of the number~ right outlet you will get numerical data. i have used this for fading sound files up and down in a logarithmic and exponential fashion.
-GW
• Apr 05 2010 | 1:35 pm
Thanks, It's for a Midi Effect in Max4Live so I figured I'd try to keep it non-MSP thinking it would save CPU but it seems to be more trouble than it is worth. Especially since CPU is much less of a problem than Midi clogging is.
I tried curve~ with both number~ and snapshot~ with the later working better because it can get down to a finer resolution. But anything below a 10ms snapshot seems to knock my synth out of tune.
At 10ms the tuning is correct but even with a 1 ms curve~ ramptime there is an audible portamento (which, I'm guessing as you say Roman is the peak values getting lost)
Could a way around this be to use curve~ into a buffer~ use index and some scaling? that way there would not need to be an expr on each value leaving a [line].
Anyway - here are my patches.
• Apr 07 2010 | 4:00 am
>>But anything below a 10 ms snapshot seems to knock my synth out of tune.
you might want to put a [change 0.] behind the [snapshot] ... or eventually even a [limit]
-110 kdx://guest:guest@110-modular.no-ip.org:10700/
• Apr 07 2010 | 4:45 am
a simple curve-making tool, plus you can just draw in whatever you want into the [itable]: