TencentLBSGeofencePolygonRegion Class Reference

Inherits from TencentLBSGeofenceRegion : NSObject
Declared in TencentLBSGeofenceRegion.h

Overview

多边形地理围栏区域,由一组或多组顶点坐标定义。 顶点按顺序连接形成闭合多边形,每个子多边形最少需要 3 个顶点。 支持多多边形区域(如行政区划中的飞地),通过 polygons 属性访问所有子多边形。

  polygons

所有子多边形的坐标数组。 数组中每个元素为一个子多边形的顶点数组(NSArray,元素为 NSValue 包装的 CLLocationCoordinate2D)。 对于单一多边形围栏,该数组仅包含一个元素。 对于包含飞地的行政区划围栏,可能包含多个元素。

@property (nonatomic, copy, readonly) NSArray<NSArray<NSValue*> *> *polygons

Discussion

所有子多边形的坐标数组。 数组中每个元素为一个子多边形的顶点数组(NSArray,元素为 NSValue 包装的 CLLocationCoordinate2D)。 对于单一多边形围栏,该数组仅包含一个元素。 对于包含飞地的行政区划围栏,可能包含多个元素。

Note: containsCoordinate: 和 distanceToBoundaryFromCoordinate: 会同时考虑所有子多边形。 当两个 polygon 重叠时,重叠区域不属于本区域(飞地语义)。

Declared In

TencentLBSGeofenceRegion.h

– initWithCoordinates:identifier:

创建单多边形围栏区域

- (nullable instancetype)initWithCoordinates:(NSArray<NSValue*> *)coordinates identifier:(NSString *)identifier

Parameters

coordinates

多边形顶点坐标数组,数组中的元素为 NSValue 包装的 CLLocationCoordinate2D。最少需要 3 个顶点,且各顶点坐标须为有效经纬度

identifier

围栏的唯一标识符,不能为 nil 或空字符串

Return Value

多边形围栏实例,参数无效时返回 nil

Discussion

创建单多边形围栏区域

Declared In

TencentLBSGeofenceRegion.h

– initWithPolygons:identifier:

创建多多边形围栏区域(支持飞地等复合区域)

- (nullable instancetype)initWithPolygons:(NSArray<NSArray<NSValue*> *> *)polygons identifier:(NSString *)identifier

Parameters

polygons

多边形数组,每个元素为一个子多边形的顶点坐标数组(NSArray),每个子多边形最少需要 3 个顶点

identifier

围栏的唯一标识符,不能为 nil 或空字符串

Return Value

多边形围栏实例,参数无效时返回 nil

Discussion

创建多多边形围栏区域(支持飞地等复合区域)

Declared In

TencentLBSGeofenceRegion.h

– initWithCCoordinates:count:identifier:

创建单多边形围栏区域(C 数组方式)

- (nullable instancetype)initWithCCoordinates:(const CLLocationCoordinate2D *)coordinates count:(NSUInteger)count identifier:(NSString *)identifier

Parameters

coordinates

多边形顶点坐标 C 数组

count

顶点数量,最少需要 3 个顶点

identifier

围栏的唯一标识符,不能为 nil 或空字符串

Return Value

多边形围栏实例,参数无效时返回 nil

Discussion

创建单多边形围栏区域(C 数组方式)

Declared In

TencentLBSGeofenceRegion.h