本文整理汇总了C#中Compositor.CreateCubicBezierEasingFunction方法的典型用法代码示例。如果您正苦于以下问题:C# Compositor.CreateCubicBezierEasingFunction方法的具体用法?C# Compositor.CreateCubicBezierEasingFunction怎么用?C# Compositor.CreateCubicBezierEasingFunction使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Compositor
的用法示例。
在下文中一共展示了Compositor.CreateCubicBezierEasingFunction方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: CreateAnimationTemplates
private void CreateAnimationTemplates(Compositor compositor)
{
//
// Near-slide and far-slide animations.
//
_nearSlideOffsetAnimation = compositor.CreateVector3KeyFrameAnimation();
_nearSlideOffsetAnimation.InsertExpressionKeyFrame(0.0f, "this.StartingValue");
_nearSlideOffsetAnimation.InsertExpressionKeyFrame(1.0f, "vector3(0,0,0) - myViewportCenter");
_farSlideOffsetAnimation = compositor.CreateVector3KeyFrameAnimation();
_farSlideOffsetAnimation.InsertExpressionKeyFrame(0.0f, "this.StartingValue");
_farSlideOffsetAnimation.InsertExpressionKeyFrame(0.9f, "vector3(0,0,0) - myViewportCenter");
_farSlideOffsetAnimation.InsertExpressionKeyFrame(1.0f, "vector3(0,0,0) - myViewportCenter");
_slideCenterAnimation = compositor.CreateVector3KeyFrameAnimation();
_slideCenterAnimation.InsertExpressionKeyFrame(0.0f, "this.StartingValue");
_slideCenterAnimation.InsertExpressionKeyFrame(1.0f, "myTargetCenterPoint");
_nearSlideScaleAnimation = compositor.CreateVector3KeyFrameAnimation();
_nearSlideScaleAnimation.InsertExpressionKeyFrame(0.00f, "this.StartingValue");
_nearSlideScaleAnimation.InsertExpressionKeyFrame(1.00f, "myScale");
_farSlideScaleAnimation = compositor.CreateVector3KeyFrameAnimation();
_farSlideScaleAnimation.InsertExpressionKeyFrame(0.00f, "this.StartingValue");
_farSlideScaleAnimation.InsertKeyFrame(0.30f, new Vector3(1.0f, 1.0f, 1.0f));
_farSlideScaleAnimation.InsertKeyFrame(1.00f, new Vector3(1.0f, 1.0f, 1.0f));
TimeSpan time4sec = TimeSpan.FromSeconds(4);
TimeSpan time8sec = TimeSpan.FromSeconds(8);
_nearSlideOffsetAnimation.Duration = time4sec;
_farSlideOffsetAnimation.Duration = time8sec;
_slideCenterAnimation.Duration = time4sec;
_nearSlideScaleAnimation.Duration = time4sec;
_farSlideScaleAnimation.Duration = time4sec;
//
// Zoom animations.
//
_zoomScaleAnimation = compositor.CreateVector3KeyFrameAnimation();
_zoomScaleAnimation.InsertExpressionKeyFrame(0.00f, "this.StartingValue");
_zoomScaleAnimation.InsertKeyFrame(0.40f, new Vector3(1.0f, 1.0f, 1.0f));
_zoomScaleAnimation.InsertKeyFrame(0.60f, new Vector3(1.0f, 1.0f, 1.0f));
_zoomScaleAnimation.InsertExpressionKeyFrame(1.00f, "myScale");
_zoomCenterAnimation = compositor.CreateVector3KeyFrameAnimation();
_zoomCenterAnimation.InsertExpressionKeyFrame(0.00f, "this.StartingValue");
_zoomCenterAnimation.InsertExpressionKeyFrame(0.40f, "this.StartingValue");
_zoomCenterAnimation.InsertExpressionKeyFrame(0.60f, "myTargetCenterPoint");
_zoomCenterAnimation.InsertExpressionKeyFrame(1.00f, "myTargetCenterPoint");
_zoomOffsetAnimation = compositor.CreateVector3KeyFrameAnimation();
_zoomOffsetAnimation.InsertExpressionKeyFrame(0.00f, "this.StartingValue");
_zoomOffsetAnimation.InsertExpressionKeyFrame(1.00f, "vector3(0,0,0) - myViewportCenter");
TimeSpan time12sec = TimeSpan.FromSeconds(12);
_zoomScaleAnimation.Duration = time12sec;
_zoomCenterAnimation.Duration = time12sec;
_zoomOffsetAnimation.Duration = time12sec;
//
// Stack animations.
//
CubicBezierEasingFunction flyInEasing;
CubicBezierEasingFunction flyOutEasing;
flyInEasing = compositor.CreateCubicBezierEasingFunction(new Vector2(0.0f, 1.0f), new Vector2(0.8f, 1.0f));
_stackFlyInAnimation = compositor.CreateVector3KeyFrameAnimation();
_stackFlyInAnimation.InsertExpressionKeyFrame(0.00f, "stackVisual.Offset + startDelta");
_stackFlyInAnimation.InsertExpressionKeyFrame(1.00f, "stackVisual.Offset + endDelta", flyInEasing);
_stackFlyInAnimation.Duration = TimeSpan.FromSeconds(2);
flyOutEasing = compositor.CreateCubicBezierEasingFunction(new Vector2(0.0f, 0.4f), new Vector2(1.0f, 0.6f));
_stackFlyOutAnimation = compositor.CreateVector3KeyFrameAnimation();
_stackFlyOutAnimation.InsertExpressionKeyFrame(0.00f, "this.StartingValue", flyOutEasing);
_stackFlyOutAnimation.InsertExpressionKeyFrame(0.50f, "this.StartingValue + delta", flyOutEasing);
_stackFlyOutAnimation.InsertExpressionKeyFrame(1.00f, "originalOffset", flyOutEasing);
_stackFlyOutAnimation.Duration = TimeSpan.FromSeconds(2);
_stackScaleAnimation = compositor.CreateVector3KeyFrameAnimation();
_stackScaleAnimation.InsertExpressionKeyFrame(0.00f, "this.StartingValue");
_stackScaleAnimation.InsertExpressionKeyFrame(1.00f, "myScale");
_stackScaleAnimation.Duration = TimeSpan.FromSeconds(6);
//
// Color flashlight expression animation.
//
// This expression returns a computes between 0 and 1 as a function of on how close the
// center of the frame is to the center of the window.
// - If the frame is at the center of the window, the expression computes 0 (no
// desaturation).
// - If the frame is more than 300px away from the center of the window, the
// expression computes 1 (full desaturation).
// - If the frame is within 300px from the center of the window, the expression
// computes a value between 0 and 1 relative to how far the frame is from the 300px
//.........这里部分代码省略.........
示例2: CreateCompositionEasingFunction
/// <summary>
/// 创建用于 Composition API 的 CompositionEasingFunction。
/// </summary>
/// <param name="compositor"></param>
/// <returns></returns>
public override CompositionEasingFunction CreateCompositionEasingFunction(Compositor compositor)
{
return compositor.CreateCubicBezierEasingFunction(ControlPoint1.ToVector2(), ControlPoint2.ToVector2());
}