Interpolate
Swift interpolation for gesture-driven animations
...The idea of Interpolate is - all animation is the interpolation of values over time. Create an Interpolate object with a from value, a to value and an apply closure that applies the interpolation's result to the target object. Alternatively, you can specify multiple values for the interpolation in an array. The Swift compiler might have issues to infer the type of the array so it's best to be explicit. For other types of gesture recognizers that only report a beginning and an end (e.g. a UILongPressGestureRecognizer), you can animate directly to a target progress value with a given duration.