Transitions
ncannasse opened this issue · 1 comments
ncannasse commented
Add transitions on int/float values:
xxx {
transition : [property] [time] [speed-value-ref?] [curve?];
}
- property : any domkit property (int/float) color ?
- time : fixed time (
1s
) - speed-value-ref : can be used to adjust speed based on distance (ex : 1s 100 means move by 100 per 1s)
- curve : easing curve (extensible framework for custom curves) -- allow parameters such as vibrate(10)
Interpolation of values:
- we start at S, target value is E, time is T
- if we have speed-value-ref R value, duration is adjusted as T' = abs(E - S) * T / R
- we update progress P% each frame
- if there is a change during a transition, we update progress to account for current value (example : [0,100,1s] -> break at 50% (value=50) -> set new target 25 --> [100,25,1s] at 66%) (TODO:how this works on colors?)
- transitions are set on the target class, not on the source one (transitions on source are lost when class gets updated)
ncannasse commented
This has been merged already.