123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120 |
- //
- // AMapGeoFenceRegionObj.h
- // AMapLocationKit
- //
- // Created by hanxiaoming on 16/12/5.
- // Copyright © 2016年 Amap. All rights reserved.
- //
- #import "AMapLocationCommonObj.h"
- ///AMapGeoFence Region State
- typedef NS_ENUM(NSInteger, AMapGeoFenceRegionStatus)
- {
- AMapGeoFenceRegionStatusUnknown = 0, ///< 未知
- AMapGeoFenceRegionStatusInside = 1, ///< 在范围内
- AMapGeoFenceRegionStatusOutside = 2, ///< 在范围外
- AMapGeoFenceRegionStatusStayed = 3, ///< 停留(在范围内超过10分钟)
- };
- typedef NS_ENUM(NSInteger, AMapGeoFenceRegionType)
- {
- AMapGeoFenceRegionTypeCircle = 0, /// 圆形地理围栏
- AMapGeoFenceRegionTypePolygon = 1, /// 多边形地理围栏
- AMapGeoFenceRegionTypePOI = 2, /// 兴趣点(POI)地理围栏
- AMapGeoFenceRegionTypeDistrict = 3, /// 行政区划地理围栏
- };
- #pragma mark - AMapGeoFenceRegion
- ///地理围栏基类,不可直接使用。(since 2.3.0)
- @interface AMapGeoFenceRegion : NSObject<NSCopying>
- ///AMapGeoFenceRegion的唯一标识符
- @property (nonatomic, copy, readonly) NSString *identifier;
- ///用户自定义ID,可为nil。
- @property (nonatomic, copy, readonly) NSString *customID;
- ///坐标点和围栏的关系,比如用户的位置和围栏的关系
- @property (nonatomic, assign) AMapGeoFenceRegionStatus fenceStatus;
- ///用户自定义ID,可为nil。
- @property (nonatomic, assign) AMapGeoFenceRegionType regionType;
- ///缓存最近获取的定位信息,可能会存在延时,可为nil,会在获取定位时更新
- @property (nonatomic, copy) CLLocation *currentLocation;
- @end
- #pragma mark - AMapLocationCircleRegion
- ///圆形地理围栏(since 2.3.0)
- @interface AMapGeoFenceCircleRegion : AMapGeoFenceRegion
- ///中心点的经纬度坐标
- @property (nonatomic, readonly) CLLocationCoordinate2D center;
- ///半径,单位:米
- @property (nonatomic, readonly) CLLocationDistance radius;
- @end
- #pragma mark -AMapGeoFencePolygonRegion
- ///多边形地理围栏(since 2.3.0)
- @interface AMapGeoFencePolygonRegion : AMapGeoFenceRegion
- ///经纬度坐标点数据
- @property (nonatomic, readonly) CLLocationCoordinate2D *coordinates;
- ///经纬度坐标点的个数
- @property (nonatomic, readonly) NSInteger count;
- @end
- #pragma mark -AMapGeoFencePOIRegion
- ///兴趣点(POI)地理围栏(since 2.3.0)
- @interface AMapGeoFencePOIRegion : AMapGeoFenceCircleRegion
- ///POI信息
- @property (nonatomic, strong, readonly) AMapLocationPOIItem *POIItem;
- @end
- #pragma mark -AMapGeoFenceDistrictRegion
- ///行政区划地理围栏(since 2.3.0)
- @interface AMapGeoFenceDistrictRegion : AMapGeoFenceRegion
- ///行政区域信息
- @property (nonatomic, strong, readonly) AMapLocationDistrictItem *districtItem;
- ///行政区域轮廓坐标点,每个行政区可能有多个模块,每个模块的坐标点数组由AMapLocationPoint构成
- @property (nonatomic, copy, readonly) NSArray <NSArray<AMapLocationPoint *> *> *polylinePoints;
- @end
|