Inviwo 0.9.12-pre
Inviwo documentation
Loading...
Searching...
No Matches
inviwo::animation Namespace Reference

Classes

class  Animation
class  AnimationController
class  AnimationControllerObservable
class  AnimationControllerObserver
class  AnimationEditorDockWidgetQt
class  AnimationEditorQt
class  AnimationLabelViewQt
class  AnimationManager
class  AnimationObservable
class  AnimationObserver
class  AnimationQtSupplier
class  AnimationsModel
class  AnimationSupplier
struct  AnimationTimeState
class  AnimationViewQt
class  BaseKeyframe
class  BaseKeyframeSequence
class  BasePropertyTrack
class  BaseTrack
class  ButtonKeyframe
class  ButtonKeyframeSequence
class  CallbackKeyframe
class  CallbackKeyframeSequence
class  CallbackTrack
class  CameraKeyframe
class  CameraLinearInterpolation
class  CameraSphericalInterpolation
class  ConstantInterpolation
class  ControlKeyframe
class  ControlKeyframeSequence
class  ControlSequenceEditor
class  ControlTrack
class  ControlTrackWidgetQt
class  DemoController
class  DemoControllerObservable
class  DemoControllerObserver
class  DemoNavigatorDockWidgetQt
struct  FindDivisionsResult
class  ImageRecorderFactory
class  Interpolation
class  InterpolationFactory
class  InterpolationFactoryObject
class  InterpolationFactoryObjectKeyframe
class  InterpolationFactoryObjectTemplate
class  InterpolationTyped
class  InvalidationKeyframe
class  InvalidationKeyframeSequence
class  InvalidationSequenceEditor
class  InvalidationTrack
class  Keyframe
class  KeyframeEditorWidget
class  KeyframeObservable
class  KeyframeObserver
class  KeyframeSequence
class  KeyframeSequenceObserver
class  KeyframeSequenceObserverble
class  KeyframeSequenceTyped
class  KeyframeSequenceWidgetQt
class  KeyframeWidgetQt
 Graphical representation of a keyframe. More...
struct  KeyframeWidgetQtLock
class  LinearInterpolation
class  MainAnimation
 Responsible for the main AnimationController and saving it in the workspace. More...
class  PropertySequenceEditor
class  PropertyTrack
class  PropertyTrackWidgetQt
class  Recorder
class  RecorderFactories
class  RecorderFactory
struct  RecorderOptions
class  SequenceEditorFactory
class  SequenceEditorFactoryObject
class  SequenceEditorFactoryObjectTemplate
class  SequenceEditorPanel
class  SequenceEditorWidget
class  Track
class  TrackControlsWidgetQt
class  TrackFactory
class  TrackFactoryObject
class  TrackFactoryObjectTemplate
class  TrackObservable
class  TrackObserver
class  TrackTyped
class  TrackWidgetQt
class  TrackWidgetQtFactory
class  TrackWidgetQtFactoryObject
class  TrackWidgetQtFactoryObjectTemplate
class  ValueKeyframe
class  ValueKeyframeSequence
class  ValueKeyframeSequenceObserver
class  ValueKeyframeSequenceObserverble
class  WorkspaceAnimations
 Responsible for animations saved in the workspace and ensuring that there always is at least one main Animation. More...

Typedefs

using Seconds = std::chrono::duration<double, std::ratio<1>>
using ButtonTrack = PropertyTrack<ButtonProperty, ButtonKeyframe, ButtonKeyframeSequence>
using CameraKeyframeSequence = KeyframeSequenceTyped<CameraKeyframe>
using CameraTrack = PropertyTrack<CameraProperty, CameraKeyframe>

Enumerations

enum class  AnimationState { Paused = 0 , Playing , Rendering }
enum class  PlaybackMode { Once = 0 , Loop , Swing }
enum class  PlaybackDirection { Forward = 0 , Backward }
enum class  ControlAction { Pause , Jump }
enum class  ItemTypes { Keyframe , KeyframeSequence , ControlTrack , PropertyTrack }

Functions

template<typename Iterator>
AnimationTimeState animateRange (Iterator begin, Iterator end, Seconds from, Seconds to, AnimationState state)
IVW_MODULE_ANIMATION_API bool operator== (const CameraKeyframe &a, const CameraKeyframe &b)
IVW_MODULE_ANIMATION_API bool operator!= (const CameraKeyframe &a, const CameraKeyframe &b)
template<typename Prop, typename Key, typename Seq>
bool operator== (const PropertyTrack< Prop, Key, Seq > &a, const PropertyTrack< Prop, Key, Seq > &b)
template<typename Prop, typename Key, typename Seq>
bool operator!= (const PropertyTrack< Prop, Key, Seq > &a, const PropertyTrack< Prop, Key, Seq > &b)
template<typename T>
bool operator== (const ValueKeyframe< T > &a, const ValueKeyframe< T > &b)
template<typename T>
bool operator!= (const ValueKeyframe< T > &a, const ValueKeyframe< T > &b)
IVW_MODULE_ANIMATION_API bool operator== (const Interpolation &a, const Interpolation &b)
IVW_MODULE_ANIMATION_API bool operator!= (const Interpolation &a, const Interpolation &b)
IVW_MODULE_ANIMATIONQT_API qreal getSnapTime (const qreal &actualTime, const qreal &scale)
constexpr double timeToScenePos (Seconds time)
constexpr Seconds scenePosToTime (double pos)
IVW_MODULE_ANIMATIONQT_API FindDivisionsResult findDivisions (double start, double stop, int divisions)

Variables

constexpr int trackHeight = 31
constexpr int trackHeightNudge = 2
constexpr int timelineHeight = 25
constexpr int keyframeWidth = 15
constexpr int keyframeHeight = trackHeight
constexpr int widthPerSecond = 96

Detailed Description

animation

Function Documentation

◆ getSnapTime()

IVW_MODULE_ANIMATIONQT_API qreal inviwo::animation::getSnapTime ( const qreal & actualTime,
const qreal & scale )

We snap to certain times depending on the scale (zoom) level and keyboard modifiers. It is important to supply scene coordinates to this function!