Donner SVG main
0.8.0 ยท 64d9612f0.8.0 main
SVG editor and embeddable C⁠+⁠+⁠20 engine.
Loading...
Searching...
No Matches
AnimationInterpolation.h File Reference
#include <cstddef>
#include <cstdint>
#include <optional>
#include <span>
#include <vector>
Include dependency graph for AnimationInterpolation.h:
This graph shows which files directly or indirectly include this file:

Classes

struct  donner::svg::components::AnimationInterpolation
 Shared keyframe timing and composition attributes. More...
struct  donner::svg::components::AnimationSegment
 Selected keyframe interval and its eased progress. More...

Namespaces

namespace  donner
 Top-level Donner namespace, which is split into different sub-namespaces such as donner::svg and donner::css.
namespace  donner::svg
 Donner SVG library, which can load, manipulate and render SVG files.
namespace  donner::svg::components
 Contains the implementation of the Donner ECS,.

Enumerations

enum class  donner::svg::components::CalcMode : uint8_t {
  donner::svg::components::Discrete ,
  donner::svg::components::Linear ,
  donner::svg::components::Paced ,
  donner::svg::components::Spline
}
 How keyframe values are sampled over time. More...

Functions

std::optional< AnimationSegment > donner::svg::components::SelectAnimationSegment (double progress, std::size_t count, const AnimationInterpolation &options, std::span< const double > distances={})
 Validate keyframe timing and select the interval for a normalized time.

Class Documentation

◆ donner::svg::components::AnimationSegment

struct donner::svg::components::AnimationSegment

Selected keyframe interval and its eased progress.

Class Members
size_t from = 0 First keyframe index.
double progress = 0 Progress within the interval.
size_t to = 0 Second index, equal to from for a discrete value.