MAPolygon.h.svn-base 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. //
  2. // MAPolygon.h
  3. // MAMapKit
  4. //
  5. // Created by AutoNavi.
  6. // Copyright (c) 2013年 Amap. All rights reserved.
  7. //
  8. #import "MAMultiPoint.h"
  9. #import "MAOverlay.h"
  10. ///此类用于定义一个由多个点组成的闭合多边形, 点与点之间按顺序尾部相连, 第一个点与最后一个点相连, 通常MAPolygon是MAPolygonRenderer的model
  11. @interface MAPolygon : MAMultiPoint <MAOverlay>
  12. ///内嵌MAPolygon数组,在生成的多边形中将会裁减掉内嵌polygon包含的区域
  13. @property (readonly) NSArray *interiorPolygons;
  14. /**
  15. * @brief 根据map point数据生成多边形
  16. * @param points mapPoint数据,points对应的内存会拷贝,调用者负责该内存的释放
  17. * @param count 点的个数
  18. * @return 新生成的多边形
  19. */
  20. + (instancetype)polygonWithPoints:(MAMapPoint *)points count:(NSUInteger)count;
  21. /**
  22. * @brief 根据map point数据和interior polygons生成多边形
  23. * @param points mapPoint数据,points对应的内存会拷贝,调用者负责该内存的释放
  24. * @param count 点的个数
  25. * @param interiorPolygons MAPolygon数组,指定在生成的多边形中需要裁剪掉的区域
  26. * @return 新生成的多边形
  27. */
  28. + (instancetype)polygonWithPoints:(MAMapPoint *)points count:(NSUInteger)count interiorPolygons:(NSArray *)interiorPolygons;
  29. /**
  30. * @brief 根据经纬度坐标数据生成闭合多边形
  31. * @param coords 经纬度坐标点数据,coords对应的内存会拷贝,调用者负责该内存的释放
  32. * @param count 经纬度坐标点数组个数
  33. * @return 新生成的多边形
  34. */
  35. + (instancetype)polygonWithCoordinates:(CLLocationCoordinate2D *)coords count:(NSUInteger)count;
  36. /**
  37. * @brief 根据经纬度坐标数据和interior polygons生成闭合多边形
  38. * @param coords 经纬度坐标点数据,coords对应的内存会拷贝,调用者负责该内存的释放
  39. * @param count 经纬度坐标点数组个数
  40. * @param interiorPolygons MAPolygon数组,指定在生成的多边形中需要裁剪掉的区域
  41. * @return 新生成的多边形
  42. */
  43. + (instancetype)polygonWithCoordinates:(CLLocationCoordinate2D *)coords count:(NSUInteger)count interiorPolygons:(NSArray *)interiorPolygons;
  44. @end