StepEasingFunction Class

Definition

A step function for interpolating between animation key frames that advances animations in increments like steps which can be can be defined. Behaviors for initial and final steps can be customized.

Equivalent WinUI class: Microsoft.UI.Composition.StepEasingFunction.

public ref class StepEasingFunction sealed : CompositionEasingFunction
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 196608)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class StepEasingFunction final : CompositionEasingFunction
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 196608)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class StepEasingFunction : CompositionEasingFunction
Public NotInheritable Class StepEasingFunction
Inherits CompositionEasingFunction
Inheritance
Attributes

Windows 10 requirements

Device family
Windows 10 Anniversary Edition (introduced in 10.0.14393.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v3.0)

Examples

class StepsEasing
{
  StepsEasing(Compositor compositor, SpriteVisual heroVisual)
  {
    // This step function makes the property offset change in 5 steps
    // i.e. goes from (0,0,0) à (20,20,20) in 5 steps.
    StepEasingFunction steps = compositor.CreateStepEasingFunction(5);

    Vector3KeyFrameAnimation animation = compositor.CreateVector3KeyFrameAnimation();
    animation.InsertKeyFrame(0f, new Vector3(0f,0f,0f));
    animation.InsertKeyFrame(1f, new Vector3(20f,20f,0f), steps);
    animation.Duration = TimeSpan.FromSeconds(2);

    heroVisual.StartAnimation("Offset", animation);
  }
}

Remarks

The step easing function gives more flexibility for animations to advance in increments. Increments are defined using StepCount property. Steps can be customized using InitialStep, and FinalStep. Behavior for initial step can be customized using IsInitialStepSingleFrame and final step using IsFinalStepSingleFrame.

To create a new instance of StepEasingFunction, call one of these methods:

Properties

Comment

A string to associate with the CompositionObject.

Equivalent WinUI property: Microsoft.UI.Composition.CompositionObject.Comment.

(Inherited from CompositionObject)
Compositor

The Compositor used to create this CompositionObject.

Equivalent WinUI property: Microsoft.UI.Composition.CompositionObject.Compositor.

(Inherited from CompositionObject)
Dispatcher

The dispatcher for the CompositionObject.

(Inherited from CompositionObject)
DispatcherQueue

Gets the DispatcherQueue for the CompostionObject.

Equivalent WinUI property: Microsoft.UI.Composition.CompositionObject.DispatcherQueue.

(Inherited from CompositionObject)
FinalStep

The step to end at.

Equivalent WinUI property: Microsoft.UI.Composition.StepEasingFunction.FinalStep.

ImplicitAnimations

The collection of implicit animations attached to this object.

Equivalent WinUI property: Microsoft.UI.Composition.CompositionObject.ImplicitAnimations.

(Inherited from CompositionObject)
InitialStep

The step to start at.

Equivalent WinUI property: Microsoft.UI.Composition.StepEasingFunction.InitialStep.

IsFinalStepSingleFrame

Indicates whether the final step should last the smallest possible duration.

Equivalent WinUI property: Microsoft.UI.Composition.StepEasingFunction.IsFinalStepSingleFrame.

IsInitialStepSingleFrame

Indicates whether the initial step should last the smallest possible duration.

Equivalent WinUI property: Microsoft.UI.Composition.StepEasingFunction.IsInitialStepSingleFrame.

Properties

The collection of properties associated with the CompositionObject.

Equivalent WinUI property: Microsoft.UI.Composition.CompositionObject.Properties.

(Inherited from CompositionObject)
StepCount

The number of steps between the starting value and the end value.

Equivalent WinUI property: Microsoft.UI.Composition.StepEasingFunction.StepCount.

Methods

Close()

Closes the CompositionObject and releases system resources.

Equivalent WinUI method: Microsoft.UI.Composition.CompositionObject.Close.

(Inherited from CompositionObject)
ConnectAnimation(String, CompositionAnimation)

Connects and animation.

(Inherited from CompositionObject)
DisconnectAnimation(String)

Disconnects an animation.

(Inherited from CompositionObject)
Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

(Inherited from CompositionObject)
PopulatePropertyInfo(String, AnimationPropertyInfo)

Defines a property that can be animated.

Equivalent WinUI method: Microsoft.UI.Composition.CompositionObject.PopulatePropertyInfo.

(Inherited from CompositionObject)
StartAnimation(String, CompositionAnimation)

Connects an animation with the specified property of the object and starts the animation.

Equivalent WinUI method: Microsoft.UI.Composition.CompositionObject.StartAnimation.

(Inherited from CompositionObject)
StartAnimationGroup(ICompositionAnimationBase)

Starts an animation group.

The StartAnimationGroup method on CompositionObject lets you start CompositionAnimationGroup. All the animations in the group will be started at the same time on the object.

Equivalent WinUI method: Microsoft.UI.Composition.CompositionObject.StartAnimationGroup.

(Inherited from CompositionObject)
StopAnimation(String)

Disconnects an animation from the specified property and stops the animation.

Equivalent WinUI method: Microsoft.UI.Composition.CompositionObject.StopAnimation.

(Inherited from CompositionObject)
StopAnimationGroup(ICompositionAnimationBase)

Stops an animation group.

Equivalent WinUI method: Microsoft.UI.Composition.CompositionObject.StopAnimationGroup.

(Inherited from CompositionObject)
TryGetAnimationController(String)

Returns an AnimationController for the animation running on the specified property.

Equivalent WinUI method: Microsoft.UI.Composition.CompositionObject.TryGetAnimationController.

(Inherited from CompositionObject)

Applies to

See also