Apache OpenOffice (AOO) Bugzilla – Issue 120749
[From Symphony] Fill color animations run too fast
Last modified: 2012-10-18 06:52:47 UTC
Created attachment 79213 [details] Fill color animation is too fast. How to reproduce: 1. Create new Impress document. 2. Add shape. 3. Assign custom animation "Emphasis/Change Fill Color", than set speed to "Very Slow". 4. Add second shape. 5. Assign custom animation "Entrance/Appear". 6. In context menu of animation of the second shape, select "Start After Previous" Start slide show and click once to start the animation. Observe the duration between fill color arriving at target color and the appearance of the second shape. Both should happen at the same time.
This bug is caused by wrong handling of start value of the fill color animation. The animation starts with the current fill color of the shape and ends with the fixed target color of the animation (it can be chosen via the Impress UI): there is a start color C_s and a target color C_t. The color at time t with t in [0,1] should be C(t) = (t-1)*C_s + t*C_t but ATM is calculcated as C(t) = (t-1)*C(t-delta_t) + t*C_t where C(t-delta_t) is the interpolated color value of the last frame, which with increasing t is nearer to C_t than to C_s.
"af" committed SVN revision 1378592 into trunk: #i120749# Fixed interpolation of "smil:to" animation when "smil:from"
Created attachment 79215 [details] Original fix by Wang Zhe
I extended the original patch by Wang Zhe by removing the mbDynamicStartValue altogether, not just commenting it out. I then simplified/removed conditionals depending on this variable. Removed the following comment because I believe that it is a misinterpretation: // According to the SMIL spec // (http://www.w3.org/TR/smil20/animation.html#animationNS-ToAnimation), // the to animation interpolates between // the _running_ underlying value and the to value (as the end value)
For the records: original Symphony issue id is Sym2_3737.
verify on AOO3.5_r1386711 on winxp/Win7-64bit/SLED 11 SP1 32 bit/Mac 10.7/Ubuntu 10.04 32 bit ,pass
Update Target Milestone to AOO 3.5.0.