Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media / Animation / ExponentialEase.cs / 1305600 / ExponentialEase.cs
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation, 2008
//
// File: ExponentialEase.cs
//-----------------------------------------------------------------------------
using MS.Internal;
namespace System.Windows.Media.Animation
{
///
/// This class implements an easing function that gives an exponential curve
///
public class ExponentialEase : EasingFunctionBase
{
public ExponentialEase()
{
}
///
/// Factor Property
///
public static readonly DependencyProperty ExponentProperty =
DependencyProperty.Register(
"Exponent",
typeof(double),
typeof(ExponentialEase),
new PropertyMetadata(2.0));
///
/// Specifies the factor which controls the shape of easing.
///
public double Exponent
{
get
{
return (double)GetValue(ExponentProperty);
}
set
{
SetValueInternal(ExponentProperty, value);
}
}
protected override double EaseInCore(double normalizedTime)
{
double factor = Exponent;
if (DoubleUtil.IsZero(factor))
{
return normalizedTime;
}
else
{
return (Math.Exp(factor * normalizedTime) - 1.0) / (Math.Exp(factor) - 1.0);
}
}
protected override Freezable CreateInstanceCore()
{
return new ExponentialEase();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
//------------------------------------------------------------------------------
// Copyright (c) Microsoft Corporation, 2008
//
// File: ExponentialEase.cs
//-----------------------------------------------------------------------------
using MS.Internal;
namespace System.Windows.Media.Animation
{
///
/// This class implements an easing function that gives an exponential curve
///
public class ExponentialEase : EasingFunctionBase
{
public ExponentialEase()
{
}
///
/// Factor Property
///
public static readonly DependencyProperty ExponentProperty =
DependencyProperty.Register(
"Exponent",
typeof(double),
typeof(ExponentialEase),
new PropertyMetadata(2.0));
///
/// Specifies the factor which controls the shape of easing.
///
public double Exponent
{
get
{
return (double)GetValue(ExponentProperty);
}
set
{
SetValueInternal(ExponentProperty, value);
}
}
protected override double EaseInCore(double normalizedTime)
{
double factor = Exponent;
if (DoubleUtil.IsZero(factor))
{
return normalizedTime;
}
else
{
return (Math.Exp(factor * normalizedTime) - 1.0) / (Math.Exp(factor) - 1.0);
}
}
protected override Freezable CreateInstanceCore()
{
return new ExponentialEase();
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
// Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- InvalidOperationException.cs
- BufferBuilder.cs
- NullExtension.cs
- Expr.cs
- FieldCollectionEditor.cs
- XmlCharCheckingWriter.cs
- RadioButtonBaseAdapter.cs
- CodeMemberEvent.cs
- ArithmeticException.cs
- ArrayExtension.cs
- Page.cs
- UnsafeNativeMethods.cs
- XamlClipboardData.cs
- NoClickablePointException.cs
- CodeCommentStatementCollection.cs
- FileStream.cs
- Rect.cs
- DesignerProperties.cs
- ArrayTypeMismatchException.cs
- BreakRecordTable.cs
- RadioButton.cs
- EventListenerClientSide.cs
- SystemWebSectionGroup.cs
- DataRowCollection.cs
- Section.cs
- OracleMonthSpan.cs
- DesignerDataSourceView.cs
- SettingsBindableAttribute.cs
- DesignerDataRelationship.cs
- TraceUtility.cs
- MetadataCache.cs
- ClientCredentials.cs
- InternalConfigRoot.cs
- InvalidPrinterException.cs
- AttributeCollection.cs
- CorrelationResolver.cs
- TaskExtensions.cs
- ConditionValidator.cs
- InternalPermissions.cs
- CapabilitiesPattern.cs
- ProcessRequestAsyncResult.cs
- ErrorWebPart.cs
- COM2EnumConverter.cs
- SplitterCancelEvent.cs
- SqlConnection.cs
- MailMessageEventArgs.cs
- TextSelectionHelper.cs
- CultureMapper.cs
- SystemGatewayIPAddressInformation.cs
- SocketException.cs
- FormViewCommandEventArgs.cs
- LoadWorkflowCommand.cs
- CollectionBase.cs
- LifetimeServices.cs
- RegistrationServices.cs
- Transform3DGroup.cs
- WebConvert.cs
- Light.cs
- FieldToken.cs
- TrustLevelCollection.cs
- ImmutableClientRuntime.cs
- CustomSignedXml.cs
- MobileComponentEditorPage.cs
- PenContext.cs
- XmlChildEnumerator.cs
- InputBindingCollection.cs
- XmlHierarchyData.cs
- PartManifestEntry.cs
- _FixedSizeReader.cs
- ArgumentException.cs
- Mutex.cs
- ArrayElementGridEntry.cs
- OAVariantLib.cs
- DeviceContexts.cs
- StdValidatorsAndConverters.cs
- BinHexEncoder.cs
- ComponentEvent.cs
- CustomSignedXml.cs
- unitconverter.cs
- VersionConverter.cs
- ListControlBoundActionList.cs
- SqlNodeAnnotation.cs
- TransformProviderWrapper.cs
- XmlFormatExtensionPointAttribute.cs
- SmiXetterAccessMap.cs
- LayoutEngine.cs
- SingleTagSectionHandler.cs
- ApplyTemplatesAction.cs
- ObjectStateManager.cs
- KnownIds.cs
- PieceDirectory.cs
- Int64KeyFrameCollection.cs
- BitmapEffectDrawingContent.cs
- ColorKeyFrameCollection.cs
- TypeValidationEventArgs.cs
- StrongNameIdentityPermission.cs
- AttachInfo.cs
- SqlTriggerAttribute.cs
- TreeNodeStyleCollection.cs
- Matrix3DStack.cs