RFR: 8242523: Update the animation and clip envelope classes

Kevin Rushforth kcr at openjdk.java.net
Mon Apr 27 23:32:28 UTC 2020

On Fri, 24 Apr 2020 00:58:30 GMT, Nir Lisker <nlisker at openjdk.org> wrote:

> Mostly refactoring in preparation of the upcoming fixes. The changes might look like a lot, but it's mostly rearranging
> of methods. Summery of changes:
> ### Animation
> * Added `isNearZero` and `areNearEqual` methods that deal with `EPSILON` checks.
> * Added `isStopped`, `isRunning` and `isPaused` convenience methods.
> * Added `runHandler` method to deal with running the handler.
> * Moved methods to be grouped closer to where they are used rather than by visibility.
> * Removed the static import for `TickCalculation`.
> * Various small subjective readability changes.
> * Behavioral changes: switching `autoReverse` and `onFinished` properties from "Simple" to "Base" properties; and lazily
>   initializing the `cuePoints` map.
> ### Clip Envelopes
> * Added `MultiLoopClipEnvelope` as an intermediate parent for infinite and finite clip envelopes.
> * Rearranged methods order to be consistent.
> * Replaced the `checkBounds` method with a new overload of `Utils.clamp`.
> * Renamed `pos` to `cyclePos`.
> * Extracted common methods: `changedDirection` and `ticksRateChange`
> * Added internal documentation.
> Also corrected a typo in `TicksCalculation` and added an explanation for an animation test.

@arapte can you also review this?


PR: https://git.openjdk.java.net/jfx/pull/196

More information about the openjfx-dev mailing list