GlsAnimation Library
1.0.6
Provides classes and functions to support animating GL Studio objects programmatically or with script files
|
Namespaces | |
Detail | |
Typedefs | |
typedef GlsAnimationReversalAdapter | GlsAnimationReverser |
Alias for backwards compatibility. More... | |
Functions | |
void | SetGlsAnimationParentChildRelationship (DisplayObject *parent, DisplayObject *child) |
Establishes a parent-child relationship like that in Adobe After Effects that does not exist in the GL Studio geometry hierarchy and should not be introduced there because that hierarchy was created and may need to be recreated programmatically (e.g., by importing a PSD file). More... | |
void | DumpResourceNames (DisplayFrame *const displayFrame, std::ostream &stream) |
GlsAnimation::Ptr | LoadAnimationScript (const std::string &filename) |
Loads an animation sequence from a script file. More... | |
std::vector< GlsAnimation::Ptr > | LoadAnimationZip (const std::string &filename) |
Loads a set of animation sequences from a zip file. More... | |
template<class Value > | |
GlsKeyframeInterpolator< Value >::Ptr | CreateInterpolator (const std::string &name, typename Detail::enable_if< !Detail::is_same2< Value, glsColor, std::string >::value >::type *=0) |
template<class Value > | |
GlsKeyframeInterpolator< Value >::Ptr | CreateInterpolator (const std::string &name, typename Detail::enable_if< Detail::is_same< Value, glsColor >::value >::type *=0) |
template<class Value > | |
GlsKeyframeInterpolator< Value >::Ptr | CreateInterpolator (const std::string &name, typename Detail::enable_if< Detail::is_same< Value, std::string >::value >::type *=0) |
template<class Value > | |
GlsKeyframeCurve< Value >::Ptr | CreateTweenerCurve (const Value &begin, const Value &end, const GlsAnimation::Key &duration, const std::string &tweenerName) |
template<class Fn > | |
GlsAnimationObserverBase::Ptr | CreateOnStartedCallback (const Fn &fn) |
template<class Fn > | |
GlsAnimationObserverBase::Ptr | CreateOnUpdatedCallback (const Fn &fn) |
template<class Fn > | |
GlsAnimationObserverBase::Ptr | CreateOnCompletedCallback (const Fn &fn) |
Variables | |
const std::string | g_linearInterpTag = "linear" |
Linear interpolator tag. More... | |
const std::string | g_gatedInterpTag = "gated" |
Gated interpolator tag. More... | |
const std::string | g_slerpTag = "slerp" |
Spherical Linear Interpolation tag (only supported by Vector and Quaternion) More... | |
const std::string | g_quadInTag = "quadraticIn" |
Quadratic In interpolator tag. More... | |
const std::string | g_quadOutTag = "quadraticOut" |
Quadratic Out interpolator tag. More... | |
const std::string | g_quadInOUtTag = "quadraticInAndOut" |
Quadratic In and Out interpolator tag. More... | |
const std::string | g_cubeInTag = "cubicIn" |
Cubic In interpolator tag. More... | |
const std::string | g_cubeOutTag = "cubicOut" |
Cubic Out interpolator tag. More... | |
const std::string | g_cubeInOutTag = "cubicInAndOut" |
Cubic In and Out interpolator tag. More... | |
const std::string | g_quartInTag = "quarticIn" |
Quartic In interpolator tag. More... | |
const std::string | g_quartOutTag = "quarticOut" |
Quartic Out interpolator tag. More... | |
const std::string | g_quartInOutTag = "quarticInAndOut" |
Quartic In and Out interpolator tag. More... | |
const std::string | g_quintInTag = "quinticIn" |
Quintic In interpolator tag. More... | |
const std::string | g_quintOutTag = "quinticOut" |
Quintic Out interpolator tag. More... | |
const std::string | g_quintInOutTag = "quinticInAndOut" |
Quintic In and Out interpolator tag. More... | |
const std::string | g_sinInTag = "sinusoidalIn" |
Sinusoidal In interpolator tag. More... | |
const std::string | g_sinOutTag = "sinusoidalOut" |
Sinusoidal Out interpolator tag. More... | |
const std::string | g_sinInOutTag = "sinusoidalInAndOut" |
Sinusoidal In and Out interpolator tag. More... | |
const std::string | g_expoInTag = "exponentIn" |
Exponent In interpolator tag. More... | |
const std::string | g_expoOutTag = "exponentOut" |
Exponent Out interpolator tag. More... | |
const std::string | g_expoInOutTag = "exponentInAndOut" |
Exponent In and Out interpolator tag. More... | |
const std::string | g_circleInTag = "circularIn" |
Circular In interpolator tag. More... | |
const std::string | g_circleOutTag = "circularOut" |
Circular Out interpolator tag. More... | |
const std::string | g_circleInOutTag = "circularInAndOut" |
Circular In and Out interpolator tag. More... | |
const std::string | g_elasticInTag = "elasticIn" |
Elastic In interpolator tag. More... | |
const std::string | g_elasticOutTag = "elasticOut" |
Elastic Out interpolator tag. More... | |
const std::string | g_elasticInOutTag = "elasticInAndOut" |
Elastic In and Out interpolator tag. More... | |
const std::string | g_bounceInTag = "bounceIn" |
Bounce In interpolator tag. More... | |
const std::string | g_bounceOutTag = "bounceOut" |
Bounce Out interpolator tag. More... | |
const std::string | g_bounceInOutTag = "bounceInAndOut" |
Bounce In and Out interpolator tag. More... | |
const std::string | g_backInTag = "backIn" |
Back In interpolator tag. More... | |
const std::string | g_backOutTag = "backOut" |
Back Out interpolator tag. More... | |
const std::string | g_backInOutTag = "backInAndOut" |
Back In and Out interpolator tag. More... | |
Alias for backwards compatibility.
Definition at line 485 of file gls_animation.h.
GlsKeyframeInterpolator<Value>::Ptr disti::CreateInterpolator | ( | const std::string & | name, |
typename Detail::enable_if< !Detail::is_same2< Value, glsColor, std::string >::value >::type * | = 0 |
||
) |
Create a curve animation
name | The name of the curve to create. |
Definition at line 788 of file gls_animation.h.
GlsKeyframeInterpolator<Value>::Ptr disti::CreateInterpolator | ( | const std::string & | name, |
typename Detail::enable_if< Detail::is_same< Value, glsColor >::value >::type * | = 0 |
||
) |
Overload for colors which creates a double interpolator of the given interpolation name and then wraps it in a GlsColorInterpolationAdapter.
name | The name of the interpolator. |
Definition at line 938 of file gls_animation.h.
GlsKeyframeInterpolator<Value>::Ptr disti::CreateInterpolator | ( | const std::string & | name, |
typename Detail::enable_if< Detail::is_same< Value, std::string >::value >::type * | = 0 |
||
) |
Overload for strings
name | The name of the interpolator. (Note: only gated is supported for strings.) |
Definition at line 955 of file gls_animation.h.
GlsAnimationObserverBase::Ptr disti::CreateOnCompletedCallback | ( | const Fn & | fn | ) |
Helper function to ease creation of an "on updated" callback with function pointers and functors; see CreateOnStartedCallback() for more details.
Definition at line 237 of file gls_animation_observer.h.
GlsAnimationObserverBase::Ptr disti::CreateOnStartedCallback | ( | const Fn & | fn | ) |
Helper function to ease creation of an "on started" callback only with function pointers and functors. The wrapped object should have a signature equivalent to void(ID). (Usually the result of this function is passed directly to the animation juggler's scheduling function.)
For example:
Definition at line 217 of file gls_animation_observer.h.
GlsAnimationObserverBase::Ptr disti::CreateOnUpdatedCallback | ( | const Fn & | fn | ) |
Helper function to ease creation of an "on updated" callback with function pointers and functors; see CreateOnStartedCallback() for more details.
Definition at line 227 of file gls_animation_observer.h.
GlsKeyframeCurve<Value>::Ptr disti::CreateTweenerCurve | ( | const Value & | begin, |
const Value & | end, | ||
const GlsAnimation::Key & | duration, | ||
const std::string & | tweenerName | ||
) |
Create a "tweener" animation
begin | The beginning keyframe's value |
end | The ending keyframe's value |
duration | The difference between the beginning and ending keys |
tweenerName | The name of the interpolator function. |
Definition at line 973 of file gls_animation.h.
void disti::DumpResourceNames | ( | DisplayFrame * | displayFrame, |
std::ostream & | stream | ||
) |
Writes all resource names in a given display frame to the given stream
displayFrame | The displayFrame to query |
stream | The stream to write to. |
Definition at line 739 of file gls_animation.cpp.
GlsAnimation::Ptr disti::LoadAnimationScript | ( | const std::string & | filename | ) |
Loads an animation sequence from a script file.
filename | The script filename. |
Definition at line 326 of file gls_animation_parser.cpp.
std::vector< GlsAnimation::Ptr > disti::LoadAnimationZip | ( | const std::string & | filename | ) |
Loads a set of animation sequences from a zip file.
filename | The zip filename. |
Definition at line 262 of file gls_animation_parser.cpp.
void disti::SetGlsAnimationParentChildRelationship | ( | DisplayObject * | parent, |
DisplayObject * | child | ||
) |
Establishes a parent-child relationship like that in Adobe After Effects that does not exist in the GL Studio geometry hierarchy and should not be introduced there because that hierarchy was created and may need to be recreated programmatically (e.g., by importing a PSD file).
This allows the objects to be moved, scaled, and rotated together with the animation library as they appear in After Effects. Typically, a call to this function should be added to the application's or component's Initialize() method.
parent | The parent object |
child | The child object |
Definition at line 716 of file gls_animation.cpp.
const std::string disti::g_backInOutTag = "backInAndOut" |
Back In and Out interpolator tag.
Definition at line 714 of file gls_animation.h.
const std::string disti::g_backInTag = "backIn" |
Back In interpolator tag.
Definition at line 712 of file gls_animation.h.
const std::string disti::g_backOutTag = "backOut" |
Back Out interpolator tag.
Definition at line 713 of file gls_animation.h.
const std::string disti::g_bounceInOutTag = "bounceInAndOut" |
Bounce In and Out interpolator tag.
Definition at line 711 of file gls_animation.h.
const std::string disti::g_bounceInTag = "bounceIn" |
Bounce In interpolator tag.
Definition at line 709 of file gls_animation.h.
const std::string disti::g_bounceOutTag = "bounceOut" |
Bounce Out interpolator tag.
Definition at line 710 of file gls_animation.h.
const std::string disti::g_circleInOutTag = "circularInAndOut" |
Circular In and Out interpolator tag.
Definition at line 705 of file gls_animation.h.
const std::string disti::g_circleInTag = "circularIn" |
Circular In interpolator tag.
Definition at line 703 of file gls_animation.h.
const std::string disti::g_circleOutTag = "circularOut" |
Circular Out interpolator tag.
Definition at line 704 of file gls_animation.h.
const std::string disti::g_cubeInOutTag = "cubicInAndOut" |
Cubic In and Out interpolator tag.
Definition at line 690 of file gls_animation.h.
const std::string disti::g_cubeInTag = "cubicIn" |
Cubic In interpolator tag.
Definition at line 688 of file gls_animation.h.
const std::string disti::g_cubeOutTag = "cubicOut" |
Cubic Out interpolator tag.
Definition at line 689 of file gls_animation.h.
const std::string disti::g_elasticInOutTag = "elasticInAndOut" |
Elastic In and Out interpolator tag.
Definition at line 708 of file gls_animation.h.
const std::string disti::g_elasticInTag = "elasticIn" |
Elastic In interpolator tag.
Definition at line 706 of file gls_animation.h.
const std::string disti::g_elasticOutTag = "elasticOut" |
Elastic Out interpolator tag.
Definition at line 707 of file gls_animation.h.
const std::string disti::g_expoInOutTag = "exponentInAndOut" |
Exponent In and Out interpolator tag.
Definition at line 702 of file gls_animation.h.
const std::string disti::g_expoInTag = "exponentIn" |
Exponent In interpolator tag.
Definition at line 700 of file gls_animation.h.
const std::string disti::g_expoOutTag = "exponentOut" |
Exponent Out interpolator tag.
Definition at line 701 of file gls_animation.h.
const std::string disti::g_gatedInterpTag = "gated" |
Gated interpolator tag.
Definition at line 683 of file gls_animation.h.
const std::string disti::g_linearInterpTag = "linear" |
Linear interpolator tag.
Definition at line 682 of file gls_animation.h.
const std::string disti::g_quadInOUtTag = "quadraticInAndOut" |
Quadratic In and Out interpolator tag.
Definition at line 687 of file gls_animation.h.
const std::string disti::g_quadInTag = "quadraticIn" |
Quadratic In interpolator tag.
Definition at line 685 of file gls_animation.h.
const std::string disti::g_quadOutTag = "quadraticOut" |
Quadratic Out interpolator tag.
Definition at line 686 of file gls_animation.h.
const std::string disti::g_quartInOutTag = "quarticInAndOut" |
Quartic In and Out interpolator tag.
Definition at line 693 of file gls_animation.h.
const std::string disti::g_quartInTag = "quarticIn" |
Quartic In interpolator tag.
Definition at line 691 of file gls_animation.h.
const std::string disti::g_quartOutTag = "quarticOut" |
Quartic Out interpolator tag.
Definition at line 692 of file gls_animation.h.
const std::string disti::g_quintInOutTag = "quinticInAndOut" |
Quintic In and Out interpolator tag.
Definition at line 696 of file gls_animation.h.
const std::string disti::g_quintInTag = "quinticIn" |
Quintic In interpolator tag.
Definition at line 694 of file gls_animation.h.
const std::string disti::g_quintOutTag = "quinticOut" |
Quintic Out interpolator tag.
Definition at line 695 of file gls_animation.h.
const std::string disti::g_sinInOutTag = "sinusoidalInAndOut" |
Sinusoidal In and Out interpolator tag.
Definition at line 699 of file gls_animation.h.
const std::string disti::g_sinInTag = "sinusoidalIn" |
Sinusoidal In interpolator tag.
Definition at line 697 of file gls_animation.h.
const std::string disti::g_sinOutTag = "sinusoidalOut" |
Sinusoidal Out interpolator tag.
Definition at line 698 of file gls_animation.h.
const std::string disti::g_slerpTag = "slerp" |
Spherical Linear Interpolation tag (only supported by Vector and Quaternion)
Definition at line 684 of file gls_animation.h.