Bridging AGGeometryKit with POP for amazing dynamics and animations.
See this interesting video about animation principles by Cento Lodigiani. If you like what you see and want to mimic step #1 and #5 - then this kit is here to help you.
Installation
New-school: Use the cocoa pod named AGGeometryKit+POP
.
Old-school: Grab the files found in Source
.
Demo
Technology
It does not rely on snapshotting view hierarchy at all. Whenever you update the property quadrilateral
(defined in AGGeometryKit) on the CALayer
you are actually just applying a new CATransform3D
. This can be done on any view whether it is an interactive UIWebView or just a plain UIImageView. This is totally cost-free! :)
Interface
Animate each corner independently using these new POPAnimatableProperty's.
extern NSString * const kPOPLayerAGKQuadTopLeft;
extern NSString * const kPOPLayerAGKQuadTopLeftX;
extern NSString * const kPOPLayerAGKQuadTopLeftY;
extern NSString * const kPOPLayerAGKQuadTopRight;
extern NSString * const kPOPLayerAGKQuadTopRightX;
extern NSString * const kPOPLayerAGKQuadTopRightY;
extern NSString * const kPOPLayerAGKQuadBottomLeft;
extern NSString * const kPOPLayerAGKQuadBottomLeftX;
extern NSString * const kPOPLayerAGKQuadBottomLeftY;
extern NSString * const kPOPLayerAGKQuadBottomRight;
extern NSString * const kPOPLayerAGKQuadBottomRightX;
extern NSString * const kPOPLayerAGKQuadBottomRightY;
@interface POPAnimatableProperty (AGK_POP)
+ (instancetype)AGKPropertyWithName:(NSString *)aName;
@end
Keywords
Convex quadrilateral, simple quadrilateral, tangential, kite, rhombus, square, trapezium, trapezoid, parallelogram, bicentric, cyclic, POP, facebook, animation, dynamics, simulation
Debugging
Please see the Debugging section over at the AGGeometryKit repo.
Contact
You can reach me on twitter as @hfossli.
Who's behind this?
Agens.no a company situated in Oslo, Norway, with some help from some very clever stackoverflow.com guys.