Magnum/Animation/Interpolation.h file

Alias Magnum::Animation::ResultOf, enum Magnum::Animation::Interpolation. Magnum::Animation::Extrapolation, function Magnum::Animation::interpolatorFor(), Magnum::Animation::interpolate(), Magnum::Animation::interpolateStrict(), Magnum::Animation::ease(), Magnum::Animation::easeClamped() Magnum::Animation::unpack(), Magnum::Animation::unpackEase(), Magnum::Animation::unpackEaseClamped()

Namespaces

namespace Magnum
Root namespace.
namespace Magnum::Animation
Keyframe-based animation.

Enums

enum class Interpolation: UnsignedByte { Constant, Linear, Spline, Custom }
Animation interpolation.
enum class Extrapolation: UnsignedByte { Extrapolated, Constant, DefaultConstructed }
Animation extrapolation behavior.

Typedefs

template<class V>
using ResultOf = typename Implementation::ResultTraits<V>::Type
Animation result type for given value type.

Functions

auto operator<<(Debug& debug, Interpolation value) -> Debug&
Debug output operator.
template<class V, class R = ResultOf<V>>
auto interpolatorFor(Interpolation interpolation) -> auto
Interpolator function for given type.
auto operator<<(Debug& debug, Extrapolation value) -> Debug&
Debug output operator.
template<class K, class V, class R = ResultOf<V>>
auto interpolate(const Containers::StridedArrayView1D<const K>& keys, const Containers::StridedArrayView1D<const V>& values, Extrapolation before, Extrapolation after, R(*)(const V&, const V&, Float) interpolator, K frame, std::size_t& hint) -> R
Interpolate animation value.
template<class K, class V, class R = ResultOf<V>>
auto interpolateStrict(const Containers::StridedArrayView1D<const K>& keys, const Containers::StridedArrayView1D<const V>& values, R(*)(const V&, const V&, Float) interpolator, K frame, std::size_t& hint) -> R
Interpolate animation value with strict constraints.
template<class V, ResultOf<V>(*)(const V&, const V&, Float) interpolator, Float(*)(Float) easer>
auto ease() -> auto constexpr
Combine easing function and an interpolator.
template<class V, ResultOf<V>(*)(const V&, const V&, Float) interpolator, Float(*)(Float) easer>
auto easeClamped() -> auto constexpr
Combine easing function and an interpolator.
template<class T, class V, ResultOf<V>(*)(const V&, const V&, Float) interpolator, V(*)(const T&) unpacker>
auto unpack() -> auto constexpr
Combine unpacking function and an interpolator.
template<class T, class V, ResultOf<V>(*)(const V&, const V&, Float) interpolator, V(*)(const T&) unpacker, Float(*)(Float) easer>
auto unpackEase() -> auto constexpr
Combine unpacking and easing functions with an interpolator.
template<class T, class V, ResultOf<V>(*)(const V&, const V&, Float) interpolator, V(*)(const T&) unpacker, Float(*)(Float) easer>
auto unpackEaseClamped() -> auto constexpr
Combine easing function and an interpolator.