inertia scrolling
well i ve got several inertia scrolling systems that work ok, but based on a relative delta with some smooth, however I fail
to see the wiring / patch / algo for the case im after:
(it's to scroll the matrix) but to make it simpler wordz i would like to make exactly the iphone contact scrolling system.
that mean when mouse down , the item scroll being sticky locked to finger in an absolute position, on release it continue to scroll then stop based on velocity/inertia. I can get the two, but not perfect when booth yet, wonder if some would have a better tech.
ideally id like as well to stop the scoll when re pressing a second time, like the iphone or comboboxes.
any ideas of the schem?
wonder if need to use smooth, delta, compare absolute positions, or some lines that plays on mouse relase ect...,
it's more the "math" or inertia that is a bit unclear
if some has an ideas (test on an xY) i could reuse, would be cool.
Or Olivier if ya read, could you enlight me a bit on process ya used in IB or comboboxes?
to see the wiring / patch / algo for the case im after:
(it's to scroll the matrix) but to make it simpler wordz i would like to make exactly the iphone contact scrolling system.
that mean when mouse down , the item scroll being sticky locked to finger in an absolute position, on release it continue to scroll then stop based on velocity/inertia. I can get the two, but not perfect when booth yet, wonder if some would have a better tech.
ideally id like as well to stop the scoll when re pressing a second time, like the iphone or comboboxes.
any ideas of the schem?
wonder if need to use smooth, delta, compare absolute positions, or some lines that plays on mouse relase ect...,
it's more the "math" or inertia that is a bit unclear
if some has an ideas (test on an xY) i could reuse, would be cool.
Or Olivier if ya read, could you enlight me a bit on process ya used in IB or comboboxes?
ambitious project,
I'm sure you're gone kill, as usual!
nothing really revolutionary into the inertia concept and I'm not sure I can help you.
If the Usine code, I use a inertiaSpeed variable,
then I calculate the speed in a loop:
I'm sure you're gone kill, as usual!
nothing really revolutionary into the inertia concept and I'm not sure I can help you.
If the Usine code, I use a inertiaSpeed variable,
Code: Select all
InertiaSpeed := InertiaFactor/(LastMouseUpTime-LastMouseDownTime);Code: Select all
speed = speed *InertiaSpeedOlivier Sens
www.brainmodular.com
www.brainmodular.com
thanks a lot olivier, that's exactly what i needed, will try that tonight. i was getting to much complex systems, that's what i thought.
cool.
cool.
of course the InertiaSpeed must be <1 !
Olivier Sens
www.brainmodular.com
www.brainmodular.com
ok cool,
ive manage to get pretty what i wanted. cool inertia XY matrix scrolling. work like a charm. maybe my tek is not the most cpu
efficient but very happy with results, quasi iphone like scrolling my liveset, no terrible spikes.. kind of juicy.
however i didn't used exactly this formula, cause i failed to understand, for me inertia was more related to velocity/acceleration
than time, so that even if long time between mouse events but a quick shift acceleration before mouse relase it can still have a
big move/inertia. that lead me to have to know the velocity, by sampling moves over a time clock and analyse variations just before mouse release, a bit more complex, maybe there is a simpler technique based on delta but i failed..
what do ya mean by "speed" in your process, how is it computed, relating to a time clock and position moves, (if so, what
kind of time clock equivalent at patch level?), or something else..?
here is the patch in case some are interested or find better/optimized way to achieve similar results.
basically i need that when moving the mouse in the item along XorY size, it "scrolls" of one unit, to keep an absolute scrolling
in the window, but inertia make it can scroll of more and has a relative in/decrement, for a biger than 0..1 range.
XY_inerta_test
ive manage to get pretty what i wanted. cool inertia XY matrix scrolling. work like a charm. maybe my tek is not the most cpu
efficient but very happy with results, quasi iphone like scrolling my liveset, no terrible spikes.. kind of juicy.
however i didn't used exactly this formula, cause i failed to understand, for me inertia was more related to velocity/acceleration
than time, so that even if long time between mouse events but a quick shift acceleration before mouse relase it can still have a
big move/inertia. that lead me to have to know the velocity, by sampling moves over a time clock and analyse variations just before mouse release, a bit more complex, maybe there is a simpler technique based on delta but i failed..
what do ya mean by "speed" in your process, how is it computed, relating to a time clock and position moves, (if so, what
kind of time clock equivalent at patch level?), or something else..?
here is the patch in case some are interested or find better/optimized way to achieve similar results.
basically i need that when moving the mouse in the item along XorY size, it "scrolls" of one unit, to keep an absolute scrolling
in the window, but inertia make it can scroll of more and has a relative in/decrement, for a biger than 0..1 range.
XY_inerta_test
I tested your patch, very useful! 
I'm working on a patch that needs this kind of control (x-axis only) for a lenghty fader.
I just saved it in my usine library
I'm working on a patch that needs this kind of control (x-axis only) for a lenghty fader.
I just saved it in my usine library
-
multiphone
- Member
- Posts: 303
- Contact:
Hello 23 FX,
I'm late...
I just have tested your Inertia patch. And they are realy great and helpfull.
For me your buttons and your inertia module are a very good candidate for User modules.
In 2074 when i script very well and i have discover the C++ language i convert your patch in User module
).
I'm late...
I just have tested your Inertia patch. And they are realy great and helpfull.
For me your buttons and your inertia module are a very good candidate for User modules.
In 2074 when i script very well and i have discover the C++ language i convert your patch in User module
thanks multiphone, glad it's helpful for you.
i found a more precise/lower cpu technique, will see if i can script it and post later...
i found a more precise/lower cpu technique, will see if i can script it and post later...
Who is online
Users browsing this forum: No registered users and 17 guests
