AnimationCurveTValue, TPoint, TCurveKey, TCurve Class |
Namespace: DigitalRune.Animation
public abstract class AnimationCurve<TValue, TPoint, TCurveKey, TCurve> : Animation<TValue> where TValue : Object, IEquatable<TValue> where TCurveKey : CurveKey<float, TPoint> where TCurve : PiecewiseCurve<float, TPoint, TCurveKey>
The AnimationCurveTValue, TPoint, TCurveKey, TCurve type exposes the following members.
Name | Description | |
---|---|---|
AnimationCurveTValue, TPoint, TCurveKey, TCurve |
Initializes a new instance of the
AnimationCurveTValue, TPoint, TCurveKey, TCurve class.
|
Name | Description | |
---|---|---|
CreateBlendAnimation |
Creates a new BlendAnimationT. (For internal use only.)
(Inherited from AnimationT.) | |
CreateInstance |
Creates an animation instance that can be used to play back the animation.
(For internal use only.)
(Inherited from AnimationT.) | |
Equals | (Inherited from Object.) | |
Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) | |
GetAnimationTime |
Gets the animation time for the specified time on the timeline.
(Inherited from AnimationT.) | |
GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) | |
GetState |
Gets the state of the animation for the specified time on the timeline.
(Inherited from AnimationT.) | |
GetTotalDuration |
Gets the total length of the timeline.
(Overrides AnimationTGetTotalDuration.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetValue |
Gets the value of the animation at the specified time.
(Inherited from AnimationT.) | |
GetValueCore |
Evaluates the animation function at the specified animation time.
(Overrides AnimationTGetValueCore(TimeSpan, T, T, T).) | |
GetValueFromPoint |
Gets the animation value from a given point on the curve.
| |
MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
Name | Description | |
---|---|---|
Curve |
Gets or sets the curve that defines the animation.
| |
EndParameter |
Gets or sets the end parameter.
| |
FillBehavior |
Gets or sets a value that specifies how the animation behaves when it reaches the end of its
duration.
(Inherited from AnimationT.) | |
IsAdditive |
Gets or sets a value indicating whether the output of the animation is added to the current
value of the property that is being animated.
(Inherited from AnimationT.) | |
StartParameter |
Gets or sets the start parameter.
| |
TargetObject |
Gets or sets the object to which the animation is applied by default.
(Inherited from AnimationT.) | |
TargetProperty |
Gets or sets the property to which the animation is applied by default.
(Inherited from AnimationT.) | |
Traits |
Gets the traits of the animation values.
(Inherited from AnimationT.) |
The animation curve (see property Curve) contains several curve keys (also known as 'key frames') that define the change of the value. The curve parameter is the animation time. A curve key defines the current value at a certain point in time. It also defines the type of interpolation that is used for the segment between the current and the next curve key. All relevant types of spline-based interpolations can be used for the curve segments.
Duration: An animation curve, by default, runs from the start (curve parameter = 0) until the last curve key is reached. The parameter of the last curve key determines the natural duration of the animation. The optional properties StartParameter and EndParameter can be used to explicitly define which part of the animation curve should be played.
Loop Behavior: When the StartParameter is less than the parameter of the first curve key or EndParameter is greater than the parameter of the last curve key then the curve is automatically repeated using a certain loop behavior. The loop behavior can be defined using the properties PreLoop and PostLoop of the Curve.
Important: The animation curve requires that the curve keys are sorted ascending by their parameter (time value). The method Sort can be called to sort all curve keys.