Map Doc  1.0
iOS-引擎SDK-开放平台
MBWorldManager类 参考

#import <MBWorldManager.h>

类 MBWorldManager 继承关系图:

构造函数

(MBWmrObjId- getRoot
 
(MBWmrObjId- getIdByAdminCode:
 
(MBAdminCode- getAdminCodeByNodeId:
 
(MBWmrNode *) - getNodeById:
 
(NSArray *) - getChildNodes:
 
(NSString *) - getCompleteRegionName:level:
 
(NSString *) - getRegionNameByPosition:level:
 
(MBWmrNode *) - getNodeByPosition:
 
(MBWmrObjId- getIdByPosition:
 
(MBWmrObjId- getPedIdByPosition:
 
(NSString *) - getDataFileWithoutExt:
 
(BOOL) - dataExist:
 
(MBWmrObjId- get0achinaNode
 
(NSArray *) - getIdByKeywordOrPY:kwandPY:maxNum:
 
(MBWmrObjId- getIdByAdminCodeStr:
 
(MBAdminBorder *) - getBorderById:
 
(MBWmrObjId- getNextSiblingId:
 
(MBWmrObjId- getFirstChildId:
 
(MBWmrObjId- getParentId:
 
(NSInteger) - getChildrenNumber:
 
(MBWmrNode *) - getNodeByIdWithoutThirdLevel:
 

类方法

(instancetype) + sharedInstance
 
(void) + cleanup
 

详细描述

城市管理单例,在使用前请初始化 MBEngine 基础类,详情参见 MBEngine

函数文档

◆ cleanup()

+ (void) cleanup

城市管理单例销毁

自从
5.0.x

◆ dataExist:()

- (BOOL) dataExist: (MBWmrObjId nodeId

分省数据时,根据ID判断对应省份的数据是否已经下载了

参数
nodeId省ID
返回
如果已经存在则返回true,否则返回false

◆ get0achinaNode()

- (MBWmrObjId) get0achinaNode

是否包含全国节点,若包含则返回全国节点有效id,否则返回无效id

返回
如果存在,返回全国节点Id,如果不存在,返回无效Id

◆ getAdminCodeByNodeId:()

- (MBAdminCode) getAdminCodeByNodeId: (MBWmrObjId nodeId

根据行政区划ID返回行政编码

参数
nodeId行政区划ID
返回
行政编码

◆ getBorderById:()

- (MBAdminBorder *) getBorderById: (MBWmrObjId nodeId

获取指定id的行政区划的多边形边界点坐标

参数
nodeId行政区划id
返回
若给定的id无效则不对MBAdminBorder进行操作,若有效返回 MBAdminBorder 结构指针。
自从
4.9.x

◆ getChildNodes:()

- (NSArray *) getChildNodes: (MBWmrObjId nodeId

根据节点ID,获得该节点下的全部Child对象

参数
nodeId节点ID
返回
NSArray MBWmrNode 对象

◆ getChildrenNumber:()

- (NSInteger) getChildrenNumber: (MBWmrObjId nodeId

获取当前对象子节点总数

参数
nodeId行政区划id
返回
子节点总数
自从
5.0

◆ getCompleteRegionName:level:()

- (NSString *) getCompleteRegionName: (MBPoint point
level: (NSUInteger)  level 

根据指定的经纬度坐标返回其所在的完整行政区划名称

参数
point指定的经纬度坐标
level要获取得到的行政区区划级别。比如:3: 省一级,如:“安徽”,“北京市”;2:地级市一级,如:“安徽滁州市”,“北京市”;1:区县一级,如:“安徽滁州市凤阳县”,“北京市西城区”
返回
得到的行政区划名称
自从
4.9.x

◆ getDataFileWithoutExt:()

- (NSString *) getDataFileWithoutExt: (MBWmrObjId nodeId

根据指定的ID,返回其对应的不带扩展名的数据文件路径 使用数据文件时,尽量用本函数来构造数据文件名,而不要在代码中写死。 对于纯国内数据,id 为 0 时得到的结果是:L"china/china", id 为 1 时得到:L"china/0beijing/0beijing" 对于躲过数据,如当前国家为印度,id 为 0 时得到的结果将会是:L"in/india/india"。

参数
nodeId指定的行政区划节点ID
返回
不带扩展名的文件路径
自从
4.9.x

◆ getFirstChildId:()

- (MBWmrObjId) getFirstChildId: (MBWmrObjId nodeId

获取当前对象第一个子节点ID

参数
nodeId兄弟节点Id
返回
第一个子节点ID
自从
4.9.x

◆ getIdByAdminCode:()

- (MBWmrObjId) getIdByAdminCode: (MBAdminCode adminCode

根据行政编码返回当前行政区划ID

参数
adminCode行政编码
返回
行政区划ID

◆ getIdByAdminCodeStr:()

- (MBWmrObjId) getIdByAdminCodeStr: (NSString *)  adminCode

根据行政区划编码字符串获取行政区划Id

参数
adminCode行政区划编码字符串
返回
行政区划Id

◆ getIdByKeywordOrPY:kwandPY:maxNum:()

- (NSArray *) getIdByKeywordOrPY: (MBWmrObjId nodeId
kwandPY: (NSString *)  kwandPY
maxNum: (NSUInteger)  maxNum 

根据关键字或拼音查询相关的城市Id

参数
nodeId搜索范围Id,最大为全国,即根节点Id
kwandPY所要查询城市的关键字或拼音
maxNum最大查找结果数
返回
返回所有匹配的结果Id集合

◆ getIdByPosition:()

- (MBWmrObjId) getIdByPosition: (MBPoint point

根据指定的位置,返回该位置所属的城市Id,该接口的调用需要完整的 base.dat 资源

参数
point坐标
返回
城市id

◆ getNextSiblingId:()

- (MBWmrObjId) getNextSiblingId: (MBWmrObjId nodeId

获取当前对象下一个兄弟节点的Id

参数
nodeId行政区划id
返回
兄弟节点Id
自从
5.0

◆ getNodeById:()

- (MBWmrNode *) getNodeById: (MBWmrObjId nodeId

根据节点ID,获得该节点MBWmrNode对象

参数
nodeId节点ID
返回
MBWmrNode对象
自从
4.9.x

◆ getNodeByIdWithoutThirdLevel:()

- (MBWmrNode *) getNodeByIdWithoutThirdLevel: (MBWmrObjId nodeId

该方法屏蔽了三级行政区域,如:“河南省郑州市金水区”中的“金水区”将无法获得,其他与getNodeById:方法功能一样

参数
nodeId城市Id
返回
城市节点

◆ getNodeByPosition:()

- (MBWmrNode *) getNodeByPosition: (MBPoint pt

根据指定的位置,返回该位置所属城市结点信息,该接口的调用需要完整的 base.dat 资源

参数
pt指定位置的经纬度坐标
返回
所属城市结点信息

◆ getParentId:()

- (MBWmrObjId) getParentId: (MBWmrObjId nodeId

获取当前对象的父亲节点ID

参数
nodeId兄弟节点Id
返回
父亲节点ID
自从
5.0

◆ getPedIdByPosition:()

- (MBWmrObjId) getPedIdByPosition: (MBPoint point

根据经纬度坐标获取指定城市的ID,此处获取的ID是带有PED文件的ID,一般来说是城市、直辖市以及特别行政区的ID,一般使用 getIdByPosition:

参数
point坐标
返回
城市id

◆ getRegionNameByPosition:level:()

- (NSString *) getRegionNameByPosition: (MBPoint point
level: (MBDistrictLevel)  level 

根据指定的经纬度坐标返回其所在的行政区划名称

参数
point指定的经纬度坐标。
level要获取到的行政区划级别。 ilevel = MBDistrictLevel_province: 省一级,如:"安徽", "北京市" ilevel = MBDistrictLevel_city: 地级市一级,如:"滁州市", "西城区" ilevel = MBDistrictLevel_village: 区县一级,如 "凤阳县", "" ilevel = MBDistrictLevel_province | MBDistrictLevel_city: 如"安徽滁州" "北京西城区" ilevel = MBDistrictLevel_city | MBDistrictLevel_village:如"滁州市凤阳县" "西城区" ilevel = MBDistrictLevel_province | MBDistrictLevel_village:如"安徽省 凤阳县" ilevel = MBDistrictLevel_province | MBDistrictLevel_city | MBDistrictLevel_village:如"安徽滁州市凤阳县" "北京市西城区"
返回
行政区划名称

◆ getRoot()

- (MBWmrObjId) getRoot

获取根节点对象ID,功能类似 4.10.x 中的 - (MBWmrNode *)rootWmrNode (从5.0.x之后删除), 但是只得到根节点ID。

返回
根节点ID

◆ sharedInstance()

+ (instancetype) sharedInstance

Returns the shared world manager.

返回
shared world manager
自从
4.9.x

该类的文档由以下文件生成: