MAAnimatedAnnotation.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. //
  2. // MAAnimatedAnnotation.h
  3. // MAMapKit
  4. //
  5. // Created by shaobin on 16/12/8.
  6. // Copyright © 2016 Amap. All rights reserved.
  7. //
  8. #import "MAConfig.h"
  9. #import "MAPointAnnotation.h"
  10. #import "MAAnnotationMoveAnimation.h"
  11. ///支持动画效果的点标注
  12. @interface MAAnimatedAnnotation : MAPointAnnotation<MAAnimatableAnnotation>
  13. ///移动方向. since 4.5.0
  14. @property (nonatomic, assign) CLLocationDirection movingDirection;
  15. /**
  16. @brief 添加移动动画, 第一个添加的动画以当前coordinate为起始点,沿传入的coordinates点移动,否则以上一个动画终点为起始点. since 4.5.0
  17. @param coordinates c数组,由调用者负责coordinates指向内存的管理
  18. @param count coordinates数组大小
  19. @param duration 动画时长,0或<0为无动画
  20. @param name 名字,如不指定可传nil
  21. @param completeCallback 动画完成回调,isFinished: 动画是否执行完成
  22. */
  23. - (MAAnnotationMoveAnimation *)addMoveAnimationWithKeyCoordinates:(CLLocationCoordinate2D *)coordinates
  24. count:(NSUInteger)count
  25. withDuration:(CGFloat)duration
  26. withName:(NSString *)name
  27. completeCallback:(void(^)(BOOL isFinished))completeCallback;
  28. /**
  29. @brief 添加移动动画, 第一个添加的动画以当前coordinate为起始点,沿传入的coordinates点移动,否则以上一个动画终点为起始点. since 5.4.0
  30. @param coordinates c数组,由调用者负责coordinates指向内存的管理
  31. @param count coordinates数组大小
  32. @param duration 动画时长,0或<0为无动画
  33. @param name 名字,如不指定可传nil
  34. @param completeCallback 动画完成回调,isFinished: 动画是否执行完成
  35. @param stepCallback 动画每一帧回调
  36. */
  37. - (MAAnnotationMoveAnimation *)addMoveAnimationWithKeyCoordinates:(CLLocationCoordinate2D *)coordinates
  38. count:(NSUInteger)count
  39. withDuration:(CGFloat)duration
  40. withName:(NSString *)name
  41. completeCallback:(void(^)(BOOL isFinished))completeCallback
  42. stepCallback:(void(^)(MAAnnotationMoveAnimation* currentAni))stepCallback;
  43. /**
  44. * @brief 获取所有未完成的移动动画, 返回数组内为MAAnnotationMoveAnimation对象. since 4.5.0
  45. * @return 返回所有移动动画,数组内元素类型为 MAAnnotationMoveAnimation
  46. */
  47. - (NSArray<MAAnnotationMoveAnimation*> *)allMoveAnimations;
  48. /**
  49. * @brief 设置需要开始动画,自定义其他类型动画时需要调用. since 6.0.0
  50. */
  51. - (void)setNeedsStart;
  52. @end