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
- TextEffect.cs
- DateTimeValueSerializerContext.cs
- CodeDomLocalizationProvider.cs
- XmlQueryCardinality.cs
- ColumnWidthChangingEvent.cs
- DataGridViewCellLinkedList.cs
- LinkLabel.cs
- MemberPathMap.cs
- Hash.cs
- XPathNode.cs
- XamlPoint3DCollectionSerializer.cs
- codemethodreferenceexpression.cs
- HtmlAnchor.cs
- smtpconnection.cs
- SoapMessage.cs
- IdnMapping.cs
- ISO2022Encoding.cs
- _DomainName.cs
- NameSpaceEvent.cs
- HashAlgorithm.cs
- CodeRegionDirective.cs
- DataTemplateKey.cs
- RefreshEventArgs.cs
- ImageField.cs
- PerfService.cs
- Scheduling.cs
- Frame.cs
- TemplateContainer.cs
- HtmlInputRadioButton.cs
- PeerDuplexChannelListener.cs
- QilFactory.cs
- SchemaTypeEmitter.cs
- BitHelper.cs
- UIElementAutomationPeer.cs
- WebPartsPersonalizationAuthorization.cs
- SystemMulticastIPAddressInformation.cs
- StringKeyFrameCollection.cs
- ThreadStaticAttribute.cs
- Deflater.cs
- DataGridDesigner.cs
- Drawing.cs
- FixedElement.cs
- _DigestClient.cs
- BitmapImage.cs
- RawStylusInputReport.cs
- ViewCellRelation.cs
- RightsManagementManager.cs
- CodeBlockBuilder.cs
- DmlSqlGenerator.cs
- SqlDependencyListener.cs
- ImmutableAssemblyCacheEntry.cs
- DataGridViewTextBoxEditingControl.cs
- EntryWrittenEventArgs.cs
- DelegateBodyWriter.cs
- AssociatedControlConverter.cs
- ProfileModule.cs
- ConfigXmlCDataSection.cs
- WebPartVerbsEventArgs.cs
- TrackingDataItemValue.cs
- SamlAudienceRestrictionCondition.cs
- SimpleParser.cs
- LifetimeServices.cs
- ContentElementCollection.cs
- GridViewRowEventArgs.cs
- ToggleButtonAutomationPeer.cs
- ObjectStateEntryDbUpdatableDataRecord.cs
- MetadataPropertyCollection.cs
- GetReadStreamResult.cs
- DBConcurrencyException.cs
- ExpressionNormalizer.cs
- XmlSerializationGeneratedCode.cs
- PageRequestManager.cs
- ProvidersHelper.cs
- RequiredFieldValidator.cs
- DesignerActionKeyboardBehavior.cs
- MsmqIntegrationSecurity.cs
- webeventbuffer.cs
- SQLMembershipProvider.cs
- ControlBuilderAttribute.cs
- TextTreeFixupNode.cs
- Debug.cs
- GridViewDeleteEventArgs.cs
- TimelineClockCollection.cs
- UserNameSecurityTokenAuthenticator.cs
- ExpressionPrefixAttribute.cs
- SerializationSectionGroup.cs
- OSFeature.cs
- FormViewPagerRow.cs
- CssStyleCollection.cs
- PenLineJoinValidation.cs
- FamilyTypefaceCollection.cs
- BindingGroup.cs
- TextTreePropertyUndoUnit.cs
- HashSet.cs
- StyleModeStack.cs
- ArrowControl.xaml.cs
- TextTreeDeleteContentUndoUnit.cs
- SrgsRulesCollection.cs
- QuotedStringWriteStateInfo.cs
- DocumentReference.cs