Peter d153fe0f21 Add 'submodules/LegacyComponents/' from commit 'd5594346161c1b7f203d1e87068bbe77bcaac019'
git-subtree-dir: submodules/LegacyComponents
git-subtree-mainline: 608630530451e02e5aec48389d144dbf7a3625b9
git-subtree-split: d5594346161c1b7f203d1e87068bbe77bcaac019
2019-06-11 18:51:15 +01:00

68 lines
2.3 KiB
Objective-C

/**
Copyright (c) 2014-present, Facebook, Inc.
All rights reserved.
This source code is licensed under the BSD-style license found in the
LICENSE file in the root directory of this source tree. An additional grant
of patent rights can be found in the PATENTS file in the same directory.
*/
#import <LegacyComponents/POPPropertyAnimation.h>
/**
@abstract A concrete spring animation class.
@discussion Animation is achieved through modeling spring dynamics.
*/
@interface POPSpringAnimation : POPPropertyAnimation
/**
@abstract The designated initializer.
@returns An instance of a spring animation.
*/
+ (instancetype)animation;
/**
@abstract Convenience initializer that returns an animation with animatable property of name.
@param name The name of the animatable property.
@returns An instance of a spring animation configured with specified animatable property.
*/
+ (instancetype)animationWithPropertyNamed:(NSString *)name;
/**
@abstract The current velocity value.
@discussion Set before animation start to account for initial velocity. Expressed in change of value units per second.
*/
@property (copy, nonatomic) id velocity;
/**
@abstract The effective bounciness.
@discussion Use in conjunction with 'springSpeed' to change animation effect. Values are converted into corresponding dynamics constants. Defined as a value in the range [0, 20]. Defaults to 4.
*/
@property (assign, nonatomic) CGFloat springBounciness;
/**
@abstract The effective speed.
@discussion Use in conjunction with 'springBounciness' to change animation effect. Values are converted into corresponding dynamics constants. Defined as a value in the range [0, 20]. Defaults to 12.
*/
@property (assign, nonatomic) CGFloat springSpeed;
/**
@abstract The tension used in the dynamics simulation.
@discussion Can be used over bounciness and speed for finer grain tweaking of animation effect.
*/
@property (assign, nonatomic) CGFloat dynamicsTension;
/**
@abstract The friction used in the dynamics simulation.
@discussion Can be used over bounciness and speed for finer grain tweaking of animation effect.
*/
@property (assign, nonatomic) CGFloat dynamicsFriction;
/**
@abstract The mass used in the dynamics simulation.
@discussion Can be used over bounciness and speed for finer grain tweaking of animation effect.
*/
@property (assign, nonatomic) CGFloat dynamicsMass;
@end