SplineKeyFrames.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Framework / System / Windows / Media / Animation / Generated / SplineKeyFrames.cs / 1 / SplineKeyFrames.cs

                            //---------------------------------------------------------------------------- 
//
// 
//    Copyright (C) Microsoft Corporation.  All rights reserved.
//  
//
// This file was generated, please do not edit it directly. 
// 
// Please see [....]/default.aspx/Microsoft.Projects.Avalon/MilCodeGen.html for more information.
// 
//---------------------------------------------------------------------------

using MS.Internal;
 
using System;
using System.Collections; 
using System.ComponentModel; 
using System.Diagnostics;
using System.Windows.Media; 
using System.Windows.Media.Media3D;

using MS.Internal.PresentationFramework;
 
namespace System.Windows.Media.Animation
{ 
 

    ///  
    /// This class is used as part of a ThicknessKeyFrameCollection in
    /// conjunction with a KeyFrameThicknessAnimation to animate a
    /// Thickness property value along a set of key frames.
    /// 
    /// This ThicknessKeyFrame interpolates between the Thickness Value of
    /// the previous key frame and its own Value to produce its output value. 
    ///  
    public partial class SplineThicknessKeyFrame : ThicknessKeyFrame
    { 
        #region Constructors

        /// 
        /// Creates a new SplineThicknessKeyFrame. 
        /// 
        public SplineThicknessKeyFrame() 
            : base() 
        {
        } 

        /// 
        /// Creates a new SplineThicknessKeyFrame.
        ///  
        public SplineThicknessKeyFrame(Thickness value)
            : this() 
        { 
            Value = value;
        } 

        /// 
        /// Creates a new SplineThicknessKeyFrame.
        ///  
        public SplineThicknessKeyFrame(Thickness value, KeyTime keyTime)
            : this() 
        { 
            Value = value;
            KeyTime = keyTime; 
        }

        /// 
        /// Creates a new SplineThicknessKeyFrame. 
        /// 
        public SplineThicknessKeyFrame(Thickness value, KeyTime keyTime, KeySpline keySpline) 
            : this() 
        {
            if (keySpline == null) 
            {
                throw new ArgumentNullException("keySpline");
            }
 
            Value = value;
            KeyTime = keyTime; 
            KeySpline = keySpline; 
        }
 
        #endregion

        #region Freezable
 
        /// 
        /// Implementation of Freezable.CreateInstanceCore. 
        ///  
        /// The new Freezable.
        protected override Freezable CreateInstanceCore() 
        {
            return new  SplineThicknessKeyFrame();
        }
 
        #endregion
 
        #region ThicknessKeyFrame 

        ///  
        /// Implemented to linearly interpolate between the baseValue and the
        /// Value of this KeyFrame using the keyFrameProgress.
        /// 
        protected override Thickness InterpolateValueCore(Thickness baseValue, double keyFrameProgress) 
        {
            if (keyFrameProgress == 0.0) 
            { 
                return baseValue;
            } 
            else if (keyFrameProgress == 1.0)
            {
                return Value;
            } 
            else
            { 
                double splineProgress = KeySpline.GetSplineProgress(keyFrameProgress); 

                return AnimatedTypeHelpers.InterpolateThickness(baseValue, Value, splineProgress); 
            }
        }

        #endregion 

        #region Public Properties 
 
        /// 
        /// KeySpline Property 
        /// 
        public static readonly DependencyProperty KeySplineProperty =
            DependencyProperty.Register(
                "KeySpline", 
                typeof(KeySpline),
                typeof(SplineThicknessKeyFrame), 
                new PropertyMetadata(new KeySpline())); 

        ///  
        /// The KeySpline defines the way that progress will be altered for this
        /// key frame.
        /// 
        public KeySpline KeySpline 
        {
            get 
            { 
                return (KeySpline)GetValue(KeySplineProperty);
            } 
            set
            {
                if (value == null)
                { 
                    throw new ArgumentNullException("value");
                } 
                SetValue(KeySplineProperty, value); 
            }
        } 

        #endregion
    }
 

} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK