Forums > MaxMSP

Freehand drawing in "function"?

July 31, 2009 | 9:14 am

Is there a way to draw freehand in the function object, or is it locked to breakpoint entries?

And, also, is it possible to dynamically set the length ("Table size") of the itable object, like it (sort of) is in function?


July 31, 2009 | 12:17 pm
oivindi wrote on Fri, 31 July 2009 03:14
Is there a way to draw freehand in the function object, or is it locked to breakpoint entries?

Apart from clicking to make breakpoints? No.

Quote:
And, also, is it possible to dynamically set the length ("Table size") of the itable object, like it (sort of) is in function?

Well, you can certainly use the "size " message to change the number of horizontal entries, but that won’t make any change in what the table entries currently *are* – it’ll truncate the table if the size message is less than the current size, or fill any large number with zeros.

I believe that the funbuff object will interpolate over a range from a very small number of points, so perhaps you could combine that with a scale object and get what you’re looking for.


July 31, 2009 | 12:32 pm

Looks like the interpolation stuff works in terms of adding points….

– Pasted Max Patch, click to expand. –

July 31, 2009 | 12:37 pm

function object is for functions.. think about it. what you’re asking for is really the multibar object or the lcd object.


July 31, 2009 | 6:15 pm

Some great suggestions to get me on the way there, Gregory – thanks!

Matthew: I know it’s a function, and I did do some thinking. I was thinking maybe there was a way to freely draw points in a more flowing matter, though with, say, a predefined distance between the points – thus keeping with the function’s interpolationary(!?) nature.


July 31, 2009 | 6:39 pm

yes use [lcd] to draw – and then maybe use a [peek~], [buffer~]
and [play~] for your envelope, and not data at all.

for your "interpolation" – look into [curve]. use it with
[zl reg] to store the data.

-110


July 31, 2009 | 8:25 pm

Roman: Won’t the use of LCD get too messy, particularly because you can draw so many parallell/conflicting lines? How would I ake sure lines I’ve drawn will be played back properly from the buffer?

I’m not that familiar with LCD, so I might be way off here.


July 31, 2009 | 8:59 pm
Quote:
Won’t the use of LCD get too messy, particularly because you can draw so many parallell/conflicting lines?

i’d use the [waveform~] object for freehand drawing.
check ‘draw’ from the ‘click mode’ in the inspector to be able to draw directly to a buffer.
vb



ash
August 1, 2009 | 5:55 am

I’m guessing you want a function object that uses bezier curves, with control handles like this.

Does such an object exist?


August 1, 2009 | 9:43 am

Emmanuel Jourdan’s ej.function [jsui] code is great. Take a look.

lh


August 1, 2009 | 1:26 pm
/3r7ex wrote on Fri, 31 July 2009 23:55
I’m guessing you want a function object that uses bezier curves, with control handles like this.

Does such an object exist?

Well, you could certainly make yourself a nice NURBs surface and grab a cross-section of it to use for your curve. The advantage of that would be that you’d have quite a few cross-sections to use, you could play with the NURB to modify the curviness, etc. Not that I *ever* do this. Much.


August 1, 2009 | 6:56 pm

I also came across Adam Murray’s multislider envelope, which I find very useful:

http://compusition.com/web/software/maxmsp/multislider-envelope


August 1, 2009 | 8:31 pm

I finished it. UG!


August 1, 2009 | 9:20 pm

oh screw it.

– Pasted Max Patch, click to expand. –

August 2, 2009 | 8:20 am

Thanks for sharing, Matthew – screw it or not screw it! Wink


August 2, 2009 | 9:33 am

sorry… That was edited weird. at first I gave you the pieces and told you to do the rest. then I got addicted and said "ah screw it." and finished it.

Here’s an easier to understand version.


August 2, 2009 | 9:36 am


August 2, 2009 | 9:37 am

– Pasted Max Patch, click to expand. –

August 2, 2009 | 12:21 pm

more interesting would be an effective way of having
a breakpoint envelope which can be modulated while its
been played. once gave up on it.


August 6, 2009 | 2:28 pm

oivindi wrote on Fri, 31 July 2009 20:15I was thinking maybe there was a way to freely draw points in a more flowing matter, though with, say, a predefined distance between the points – thus keeping with the function’s interpolationary(!?) nature.

I just made this as a suggestion…

Stefan

– Pasted Max Patch, click to expand. –


kp*
August 6, 2009 | 3:36 pm
stefantiedje wrote on Thu, 06 August 2009 23:28

I just made this as a suggestion…

Stefan

That is really elegant and works well. One of the things i miss about supercollider is the ability of hand draw in tables freehand and then smooth and filter the tables with the menu it had on the side. I am not sure this is clear, but old users of SC1 and SC2 will prolly know what i mean. That was pretty darned handy.


Viewing 21 posts - 1 through 21 (of 21 total)