[PD] log function in slider

Jonathan Wilkes jancsika at yahoo.com
Tue Mar 18 22:32:42 CET 2014


On 03/18/2014 04:05 PM, Alexandre Torres Porres wrote:
> and as I was checking before, not too far from raising to the power of 
> 0.25 (thicker line in the graph from the picture attached)

Btw-- here's what that patch looks like in Pd-l2ork (attached).

The array rectangle is orange because it's selected.  I also changed the 
size of the garray by click-dragging with the mouse.

-Jonathan

>
>
> 2014-03-18 16:48 GMT-03:00 Alexandre Torres Porres <porres at gmail.com 
> <mailto:porres at gmail.com>>:
>
>     the solution is as I thought, to just invert the given formula in
>     the code. Someone helped me with the math, is something like
>
>     expr ln($f1 / 1.27) / (((log(127 / 1.27) / 1.27)) * 0.01)
>
>     here's a patch attached
>
>     I'm finally gonna check what kind of curve this thing gives :)
>
>     Thanks everyone
>
>     Cheers
>
>
>     2014-03-18 5:13 GMT-03:00 Jonathan Wilkes <jancsika at yahoo.com
>     <mailto:jancsika at yahoo.com>>:
>
>         No, the code I ported is from vslider_set and
>         vslider_draw_update (might be different in Vanilla).
>
>         In vslider_bang, math is done to output the proper value. 
>         Without looking at the code I would have guessed vslider_bang
>         simply outputs a stored value like [float] does.  Then just do
>         math to set the slider position or calculate a new stored
>         value from mouse input.
>
>         -Jonathan
>
>
>         On Monday, March 17, 2014 1:21 AM, Alexandre Torres Porres
>         <porres at gmail.com <mailto:porres at gmail.com>> wrote:
>         Hi Roman. This is turning out trickier than I thought. A
>         friend explained the code to me and got to the following
>         equation, with min/max values as 0.01 and 1 respectively.
>
>         [expr 0.01 * exp((log(1 / 0.01) / 0.01) * $f1 * 0.01)]
>
>         For what I've checked, it seems to behave like your patch. But
>         it doesn't do the trick I'm looking for yet. I sent a patch
>         earlier, and I'm sending it back again.
>
>         The goal is to connect a linear slider to an [expr] (with this
>         so called "log" function) and then to another linear slider.
>         The idea then is that this second slider behaves as one that
>         was set as being "log".
>
>         In the patch attached I was able to emulate it poorly with
>         [pow 0.25], but that was before reaching the list. See that if
>         I use this expr function from the code or your patch it
>         presents quite a different behavior.
>
>         maybe it is some sort of inversion of this equation, not sure.
>         Apparently this code converts the "log" function values to
>         linear and I'm hoping to get the exact opposite. Got it?
>
>         Thanks for looking into this
>
>
>         2014-03-12 4:38 GMT-03:00 Roman Haefeli <reduzent at gmail.com>:
>
>             On Don, 2014-03-06 at 21:37 -0300, Alexandre Torres Porres
>             wrote:
>             > hi folks, out of curiosity, what's the exact log
>             function used in the
>             > slider? I'd like to emulate it.
>
>             I am not sure, if this is what you want. It converts the
>             incoming linear
>             range between 0 and 1 to a logarithmic range specified by
>             $1 and $2,
>             respectively by the second and third inlet. They behave
>             like the lower
>             and upper bound specified in the [vslider]/[hslider] classes.
>
>             https://raw.github.com/reduzent/netpd2-patches/master/abs/rh_scalelog.pd
>
>
>             Roman
>
>
>
>
>             _______________________________________________
>             Pd-list at iem.at mailing list
>             UNSUBSCRIBE and account-management ->
>             http://lists.puredata.info/listinfo/pd-list
>
>
>
>         _______________________________________________
>         Pd-list at iem.at mailing list
>         UNSUBSCRIBE and account-management ->
>         http://lists.puredata.info/listinfo/pd-list
>
>
>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20140318/06888725/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pd-l2ork.png
Type: image/png
Size: 55289 bytes
Desc: not available
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20140318/06888725/attachment-0001.png>


More information about the Pd-list mailing list