![]() |
ImFusion SDK 4.3
|
Animating objects within the ImFusion SDK. More...
Animating objects within the ImFusion SDK.
Classes | |
class | Animation |
Helper class to define an animation, that is an interpolated transition between two states. More... | |
class | AnimationBackendBase |
Base interface for managing and dispatching animations. More... | |
class | AnimationBackendDummy |
Dummy implementation of the AnimationBackendBase interface that will not execute any animation but only call its update() function exactly once with t=1.0. More... | |
class | AnimationBackendQt |
Concrete implementation of AnimationBackendBase using the Qt event loop for dispatching the animation updates. More... | |
class | BlendingAnimation |
Animates the blendFactor of an ImageView2D. More... | |
class | ScopedEnabler |
A scope guard to set the globally available enabled property for animations. More... | |
struct | UniqueId |
Helper struct to uniquely describe a type of annotation. More... | |
Enumerations | |
enum class | EasingCurve { Linear , InCubic , OutCubic , InOutCubic , Sinusoid } |
Enumeration of built-in easing curves describing the rate of change of the interpolation between 0.0 and 1.0. More... | |
Functions | |
std::unique_ptr< AnimationBackendBase > | setBackend (std::unique_ptr< AnimationBackendBase > backend) |
Install a global animation backend that is used by the set of free functions in this namespace. | |
void | runAnimation (std::shared_ptr< Animation > animation, const std::optional< UniqueId > &uniqueId=std::nullopt) |
Run the given animation on the globally installed backend. | |
std::shared_ptr< Animation > | runAnimation (std::function< void(double t)> &&updateFunc, std::chrono::milliseconds duration=std::chrono::milliseconds(500), EasingCurve easingCurve=EasingCurve::InOutCubic, const std::optional< UniqueId > &uniqueId=std::nullopt) |
Create and run a one-shot animation with the given configuration on the globally installed backend. | |
std::shared_ptr< Animation > | runLoopedAnimation (std::function< void(double)> &&updateFunc, std::chrono::milliseconds duration=std::chrono::milliseconds(500), EasingCurve easingCurve=EasingCurve::InOutCubic, const std::optional< UniqueId > &uniqueId=std::nullopt) |
Create and run a looped animation with the given configuration on the globally installed backend. | |
bool | animationsEnabled () |
Check whether the animations are globally enabled within the application. | |
void | enableAnimations (bool enabled) |
Globally enable or disable animations within the application. | |
double | animationDurationFactor () |
Returns the duration multiplier for run animations; enables you to change the speed of all animations consistently. | |
void | setAnimationDurationFactor (double value) |
Sets the duration multiplier for run animations, must be >= 0; enables you to change the speed of all animations consistently. | |
void | cancelAnimation (const UniqueId &id) |
Cancels the animation with the given id. | |
void | cancelAllAnimations () |
Cancels all animations currently in flight. | |
|
strong |
Enumeration of built-in easing curves describing the rate of change of the interpolation between 0.0 and 1.0.