Advertisement
Guest User

Untitled

a guest
Nov 24th, 2014
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.15 KB | None | 0 0
  1. - (void)viewDidLoad {
  2.  
  3. [super viewDidLoad];
  4.  
  5. perspective = 1/2500.f;
  6.  
  7. CATransform3D transformBookCover = CATransform3DIdentity;
  8. transformBookCover.m34 = perspective;
  9. transformBookCover = CATransform3DRotate(transformBookCover, 0.f * M_PI / 180.f, 0, 1.f, 0);
  10. self.imgViewBookCover.layer.transform = transformBookCover;
  11.  
  12. CATransform3D transformBookWidth = CATransform3DIdentity;
  13. transformBookWidth.m34 = perspective;
  14. transformBookWidth = CATransform3DRotate(transformBookWidth, -90.f * M_PI / 180.f, 0, 1.f, 0);
  15. self.viewBookWidth.layer.transform = transformBookWidth;
  16. }
  17.  
  18.  
  19. - (void)completeSplash {
  20.  
  21. CATransform3D transformBookCover = CATransform3DIdentity;
  22. transformBookCover.m34 = perspective;
  23. transformBookCover = CATransform3DRotate(transformBookCover, 90.f * M_PI / 180.f, 0, 1.f, 0);
  24. [self setAnchorPoint:CGPointMake(0, 0.5f) forView:self.imgViewBookCover];
  25.  
  26. CATransform3D transformBookWidth = CATransform3DIdentity;
  27. transformBookWidth.m34 = perspective;
  28. transformBookWidth = CATransform3DRotate(transformBookWidth, 0 * M_PI / 180.f, 0, 1.f, 0);
  29. transformBookWidth = CATransform3DTranslate(transformBookWidth, -320.f, 0, 0);
  30.  
  31. [UIView animateWithDuration:3.f delay:0 options:UIViewAnimationOptionCurveLinear animations:^{
  32. self.imgViewBookCover.layer.transform = transformBookCover;
  33. self.viewBookWidth.layer.transform = transformBookWidth;
  34. } completion:^(BOOL finished) {
  35. }];
  36. }
  37.  
  38.  
  39. - (void)setAnchorPoint:(CGPoint)anchorPoint forView:(UIView *)view {
  40.  
  41. CGPoint newPoint = CGPointMake(view.bounds.size.width * anchorPoint.x, view.bounds.size.height * anchorPoint.y);
  42. CGPoint oldPoint = CGPointMake(view.bounds.size.width * view.layer.anchorPoint.x, view.bounds.size.height * view.layer.anchorPoint.y);
  43.  
  44. newPoint = CGPointApplyAffineTransform(newPoint, view.transform);
  45. oldPoint = CGPointApplyAffineTransform(oldPoint, view.transform);
  46.  
  47. CGPoint position = view.layer.position;
  48.  
  49. position.x -= oldPoint.x;
  50. position.x += newPoint.x;
  51.  
  52. position.y -= oldPoint.y;
  53. position.y += newPoint.y;
  54.  
  55. view.layer.position = position;
  56. view.layer.anchorPoint = anchorPoint;
  57. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement