Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / wpf / src / Core / CSharp / System / Windows / Media / Animation / ElasticEase.cs / 1305600 / ElasticEase.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation, 2008 // // File: ElasticEase.cs //----------------------------------------------------------------------------- using MS.Internal; namespace System.Windows.Media.Animation { ////// This class implements an easing function that gives an elastic/springy curve /// public class ElasticEase : EasingFunctionBase { public ElasticEase() { } ////// Bounces Property /// public static readonly DependencyProperty OscillationsProperty = DependencyProperty.Register( "Oscillations", typeof(int), typeof(ElasticEase), new PropertyMetadata(3)); ////// Specifies the number of oscillations /// public int Oscillations { get { return (int)GetValue(OscillationsProperty); } set { SetValueInternal(OscillationsProperty, value); } } ////// Springiness Property /// public static readonly DependencyProperty SpringinessProperty = DependencyProperty.Register( "Springiness", typeof(double), typeof(ElasticEase), new PropertyMetadata(3.0)); ////// Specifies the amount of springiness /// public double Springiness { get { return (double)GetValue(SpringinessProperty); } set { SetValueInternal(SpringinessProperty, value); } } protected override double EaseInCore(double normalizedTime) { double oscillations = Math.Max(0.0, (double)Oscillations); double springiness = Math.Max(0.0, Springiness); double expo; if (DoubleUtil.IsZero(springiness)) { expo = normalizedTime; } else { expo = (Math.Exp(springiness * normalizedTime) - 1.0) / (Math.Exp(springiness) - 1.0); } return expo * (Math.Sin((Math.PI * 2.0 * oscillations + Math.PI * 0.5) * normalizedTime)); } protected override Freezable CreateInstanceCore() { return new ElasticEase(); } } } // 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
- PrimitiveXmlSerializers.cs
- OuterGlowBitmapEffect.cs
- _SecureChannel.cs
- ThemeDictionaryExtension.cs
- DeferrableContent.cs
- XPathPatternBuilder.cs
- ManipulationStartedEventArgs.cs
- CrossAppDomainChannel.cs
- NotificationContext.cs
- PolygonHotSpot.cs
- XmlHierarchicalEnumerable.cs
- QueryableFilterUserControl.cs
- MSAAWinEventWrap.cs
- TimeoutException.cs
- OracleEncoding.cs
- DocumentPage.cs
- EpmContentSerializer.cs
- DefaultValueConverter.cs
- adornercollection.cs
- BrowserTree.cs
- SessionChannels.cs
- DisplayNameAttribute.cs
- ScriptReferenceBase.cs
- AutomationProperty.cs
- SizeKeyFrameCollection.cs
- DPTypeDescriptorContext.cs
- IisTraceWebEventProvider.cs
- CommandValueSerializer.cs
- DesignerGenericWebPart.cs
- LinearQuaternionKeyFrame.cs
- DbProviderServices.cs
- BitmapEffectInputConnector.cs
- InitiatorSessionSymmetricTransportSecurityProtocol.cs
- ApplicationHost.cs
- Message.cs
- ViewStateModeByIdAttribute.cs
- Typeface.cs
- CreateUserWizardStep.cs
- DataControlPagerLinkButton.cs
- NullableConverter.cs
- ProfileServiceManager.cs
- SelectionPattern.cs
- SignedPkcs7.cs
- WorkflowFileItem.cs
- WebScriptEnablingElement.cs
- SafeCryptContextHandle.cs
- CacheRequest.cs
- PersonalizationProvider.cs
- ContentValidator.cs
- ResXResourceReader.cs
- PeerResolver.cs
- TableLayoutSettings.cs
- C14NUtil.cs
- SearchForVirtualItemEventArgs.cs
- UIElementIsland.cs
- XmlILStorageConverter.cs
- ServerReliableChannelBinder.cs
- RequestQueue.cs
- AlgoModule.cs
- CatalogPartChrome.cs
- HttpApplicationFactory.cs
- panel.cs
- ConnectionPoint.cs
- DateTimeOffsetStorage.cs
- RetrieveVirtualItemEventArgs.cs
- TaskHelper.cs
- SocketPermission.cs
- ArraySegment.cs
- GeneratedView.cs
- CollectionChangedEventManager.cs
- smtpconnection.cs
- PerformanceCounterManager.cs
- CommandBinding.cs
- HttpVersion.cs
- MetadataPropertyCollection.cs
- CollectionBuilder.cs
- UICuesEvent.cs
- ItemContainerGenerator.cs
- PathNode.cs
- SQLInt16Storage.cs
- Set.cs
- HttpPostProtocolImporter.cs
- AlternationConverter.cs
- CatalogPartChrome.cs
- SlotInfo.cs
- LineServicesRun.cs
- CredentialCache.cs
- DiagnosticsConfigurationHandler.cs
- NetworkInformationException.cs
- DurableRuntimeValidator.cs
- ToolstripProfessionalRenderer.cs
- Page.cs
- DataStreamFromComStream.cs
- CreateSequence.cs
- TemplateNameScope.cs
- ExtensionWindowHeader.cs
- WindowsListBox.cs
- ExpressionBuilder.cs
- AccessDataSource.cs
- DiagnosticTrace.cs