From d6fa5d7fffd6d89fda9f3762271685ffbb5b545d Mon Sep 17 00:00:00 2001 From: Edwin Jakobs Date: Wed, 8 Apr 2020 00:21:30 +0200 Subject: [PATCH] Add missing easing functions to orx-keyframer --- orx-keyframer/README.md | 38 ++++++++++++++++++++++ orx-keyframer/src/main/kotlin/Keyframer.kt | 21 ++++++++++-- 2 files changed, 56 insertions(+), 3 deletions(-) diff --git a/orx-keyframer/README.md b/orx-keyframer/README.md index 2ebffed8..8aab66de 100644 --- a/orx-keyframer/README.md +++ b/orx-keyframer/README.md @@ -72,6 +72,44 @@ extend { drawer.circle(animation.position, animation.radius) } ``` +## Easing + +All the easing functions of orx-easing are available + + - linear + - back-in + - back-out + - back-in-out + - bounce-in + - bounce-out + - bounce-in-out + - circ-in + - circ-out + - circ-in-out + - cubic-in + - cubic-out + - cubic-in-out + - elastic-in + - elastic-out + - elastic-in-out + - expo-in + - expo-out + - expo-in-out + - quad-in + - quad-out + - quad-in-out + - quart-in + - quart-out + - quart-in-out + - quint-in + - quint-out + - quint-in-out + - sine-in + - sine-out + - sine-in-out + - one + - zero + ## Advanced features diff --git a/orx-keyframer/src/main/kotlin/Keyframer.kt b/orx-keyframer/src/main/kotlin/Keyframer.kt index 1d3a2528..a11161e9 100644 --- a/orx-keyframer/src/main/kotlin/Keyframer.kt +++ b/orx-keyframer/src/main/kotlin/Keyframer.kt @@ -288,9 +288,24 @@ open class Keyframer { null -> Easing.Linear.function is String -> when (easingCandidate) { "linear" -> Easing.Linear.function + "back-in" -> Easing.BackIn.function + "back-out" -> Easing.BackOut.function + "back-in-out" -> Easing.BackInOut.function + "bounce-in" -> Easing.BounceIn.function + "bounce-out" -> Easing.BounceOut.function + "bounce-in-out" -> Easing.BackInOut.function + "circ-in" -> Easing.CircIn.function + "circ-out" -> Easing.CircOut.function + "circ-in-out" -> Easing.CircInOut.function "cubic-in" -> Easing.CubicIn.function "cubic-out" -> Easing.CubicOut.function "cubic-in-out" -> Easing.CubicInOut.function + "elastic-in" -> Easing.ElasticIn.function + "elastic-out" -> Easing.ElasticInOut.function + "elastic-in-out" -> Easing.ElasticOut.function + "expo-in" -> Easing.ExpoIn.function + "expo-out" -> Easing.ExpoOut.function + "expo-in-out" -> Easing.ExpoInOut.function "quad-in" -> Easing.QuadIn.function "quad-out" -> Easing.QuadOut.function "quad-in-out" -> Easing.QuadInOut.function @@ -300,9 +315,9 @@ open class Keyframer { "quint-in" -> Easing.QuintIn.function "quint-out" -> Easing.QuintOut.function "quint-in-out" -> Easing.QuintInOut.function - "expo-in" -> Easing.ExpoIn.function - "expo-out" -> Easing.ExpoOut.function - "expo-in-out" -> Easing.ExpoInOut.function + "sine-in" -> Easing.SineIn.function + "sine-out" -> Easing.SineOut.function + "sine-in-out" -> Easing.SineInOut.function "one" -> Easing.One.function "zero" -> Easing.Zero.function else -> error("unknown easing name '$easingCandidate'")