## Max curve~

Mar 30, 2010 at 9:44am

# Max curve~

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,

#49424
Mar 30, 2010 at 3:09pm

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

#177548
Mar 31, 2010 at 10:15am

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.

– Pasted Max Patch, click to expand. –
#177549
Mar 31, 2010 at 1:49pm

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?

#177550
Mar 31, 2010 at 6:09pm

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

#177551
Mar 31, 2010 at 10:34pm

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

#177552
Apr 5, 2010 at 1:35pm

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.

– Pasted Max Patch, click to expand. –
– Pasted Max Patch, click to expand. –
#177553
Apr 7, 2010 at 4:00am

>>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/

#177554
Apr 7, 2010 at 4:45am

a simple curve-making tool, plus you can just draw in whatever you want into the [itable]:

– Pasted Max Patch, click to expand. –
#177555

You must be logged in to reply to this topic.