FMKMapView Class Reference

Inherits from GLKView
Declared in FMKMapView.h

  map

当前加载的地图节点 地图节点用于管理层节点等子项 通过该节点可以进行子节点管理 该节点为只读对象,不支持创建

@property (nonatomic, readonly) FMKMap *map

Declared In

FMKMapView.h

  showCompass

是否显示指北针

@property (nonatomic, assign) BOOL showCompass

Declared In

FMKMapView.h

  labelCoverPriority

label和facility优先级设置

@property (nonatomic) BOOL labelCoverPriority

Declared In

FMKMapView.h

  mapDelegate

地图代理

@property (nonatomic, weak, nullable) id<FMKMapViewDelegate> mapDelegate

Declared In

FMKMapView.h

  displayGroupIDs

显示楼层id的数组

@property (nonatomic, strong) NSArray<NSString*> *displayGroupIDs

Declared In

FMKMapView.h

  enable3D

是否3D显示

@property (nonatomic, assign) BOOL enable3D

Declared In

FMKMapView.h

  backgroundColor

设置地图背景色

@property (nonatomic, strong) UIColor *backgroundColor

Declared In

FMKMapView.h

  lazyCreateModeEnabled

开启模型懒加载模式,默认不开启:NO 当地图数据较大时,建议开启,可提高地图流畅性 当数据较小时,不建议开启,具体视自身数据量及显示效果而定

@property (nonatomic, getter=isLazyCreateModeEnabled) BOOL lazyCreateModeEnabled

Declared In

FMKMapView.h

  displayName

模型名称显示字段切换,目前包括name字段和enamed字段

@property (nonatomic) FMKLabelField displayName

Discussion

Warning: 字段数据从fmap数据中读取,同一个模型可能只有name字段有内容,如需编辑可以联系蜂鸟云工作人员编辑英文字段。默认显示name字段,即模型的name属性,设置为YES后展示ename字段

Declared In

FMKMapView.h

  currentThemePath

地图当前使用的主题路径

@property (nonatomic, readonly) NSString *currentThemePath

Declared In

FMKMapView.h

– initWithFrame:ID:delegate:autoUpgrade:

通过ID初始化地图视图

- (instancetype)initWithFrame:(CGRect)frame ID:(NSString *)mapID delegate:(id<FMKMapViewDelegate>)target autoUpgrade:(BOOL)autoUpgrade

Parameters

frame

frame

mapID

地图ID

target

地图代理

autoUpgrade

是否自动更新地图数据,若开启自动更新,则地图在加载过程中会自动加载服务器最新数据,自动更新也受- (BOOL)fmapHaveNewVersion:回调方法影响

Return Value

mapView

Declared In

FMKMapView.h

– initWithFrame:path:delegate:

初始化地图,通过保存在本地的地图数据加载

- (instancetype)initWithFrame:(CGRect)frame path:(NSString *)dataPath delegate:(id<FMKMapViewDelegate>)target

Parameters

frame

frame

dataPath

地图数据存储位置

target

地图代理

Declared In

FMKMapView.h

– initWithFrame:offlinePath:delegate:

纯离线方式加载本地数据

- (instancetype)initWithFrame:(CGRect)frame offlinePath:(NSString *)offlinePath delegate:(id<FMKMapViewDelegate>)target

Parameters

frame

frame

offlinePath

离线数据路径

target

地图代理

Declared In

FMKMapView.h

– transformMapWithID:

通过地图ID切换地图

- (void)transformMapWithID:(NSString *)mapID

Parameters

mapID

地图ID

Discussion

该方法会请求并加载新的地图数据,在加载过程中触发相应的回调方法 地图数据的自动更新受mapView初始化时的autoUpgrade参数和地图数据更新信息回调方法影响

若对应地图不存在,该方法直接下载并加载最新地图数据

Declared In

FMKMapView.h

– transformMapWithDataPath:

通过地图数据路径切换地图

- (void)transformMapWithDataPath:(NSString *)dataPath

Parameters

dataPath

地图数据存储路径

Declared In

FMKMapView.h

– showZoomControlWithOffset:enableShow:enableSeleted:

在地图上显示缩放控制控件

- (void)showZoomControlWithOffset:(CGPoint)offset enableShow:(BOOL)show enableSeleted:(BOOL)enableSelected

Parameters

offset

偏移位置

show

是否显示

enableSelected

是否允许点击

Declared In

FMKMapView.h

– showDisplayGroupViewWithOffset:enableShow:enableSeleted:

在地图上显示楼层选择控件

- (void)showDisplayGroupViewWithOffset:(CGPoint)offset enableShow:(BOOL)show enableSeleted:(BOOL)enableSelected

Parameters

offset

偏移位置

show

是否显示

enableSelected

是否允许点击

Declared In

FMKMapView.h

  rotation

设定旋转角度

@property (nonatomic, assign) CGFloat rotation

Declared In

FMKMapView.h

– showDisplayFloorViewWithOffset:enableShow:enableSeleted:

在地图上显示楼层选择控件

- (void)showDisplayFloorViewWithOffset:(CGPoint)offset enableShow:(BOOL)show enableSeleted:(BOOL)enableSelected

Parameters

offset

偏移位置

show

是否显示

enableSelected

是否允许点击

Declared In

FMKMapView.h

– showEnable3DControlWithOffset:enableShow:enableSeleted:

在地图上显示3D控件

- (void)showEnable3DControlWithOffset:(CGPoint)offset enableShow:(BOOL)show enableSeleted:(BOOL)enableSelected

Parameters

offset

偏移位置

show

是否显示

enableSelected

是否允许点击

Declared In

FMKMapView.h

– showSingleGroupOrMultiGroupsControlWithOffset:enableShow:enableSeleted:

在地图上显示单层/多层控件

- (void)showSingleGroupOrMultiGroupsControlWithOffset:(CGPoint)offset enableShow:(BOOL)show enableSeleted:(BOOL)enableSelected

Parameters

offset

偏移位置

show

是否显示

enableSelected

是否允许点击

Declared In

FMKMapView.h

– setDisplayGroupsByGroupIDs:withHeightOffset:animated:focusGroup:

设置显示楼层并设置相邻楼层间距

- (void)setDisplayGroupsByGroupIDs:(NSArray<NSString*> *)groupIDs withHeightOffset:(CGFloat)heightOffset animated:(BOOL)animated focusGroup:(NSString *)focusGroupID

Parameters

groupIDs

楼层ID集合

heightOffset

相邻楼层间距

animated

是否有动画效果

focusGroupID

当前焦点楼层id

Declared In

FMKMapView.h

– setFocusByGroupID:animated:

设置焦点层

- (void)setFocusByGroupID:(NSString *)groupID animated:(BOOL)animated

Parameters

groupID

焦点层ID

animated

在切换焦点层过程中是否使用动效

Discussion

在多楼层情况下,设置焦点层,焦点层透明度设置为当前主题中配置的楼层透明度
非焦点层为半透明状态

Declared In

FMKMapView.h

– getFocusGroupID

获取焦点层ID

- (NSString *)getFocusGroupID

Return Value

焦点层楼层ID

Declared In

FMKMapView.h

– setGroupsAlpha:

设置当前地图显示楼层的alpha

- (void)setGroupsAlpha:(NSArray<NSNumber*> *)alphas

Parameters

alphas

楼层alpha,楼层透明度数组与当前显示楼层做匹配 若透明度数组count小于当前显示楼层数,其他显示楼层透明度默认设置为1.0

Declared In

FMKMapView.h

– cancelFocusFloor

取消地图焦点

- (void)cancelFocusFloor

Declared In

FMKMapView.h

– setThemeWithID:

通过主题ID设置主题

- (void)setThemeWithID:(NSString *)themeID

Parameters

themeID

主题ID,请从蜂鸟云平台获取

Declared In

FMKMapView.h

– setThemeWithLocalPath:

设置地图主题

- (void)setThemeWithLocalPath:(NSString *)path

Parameters

path

地图主题数据路径

Declared In

FMKMapView.h

– addBackgroundImageWithImage:

添加背景图片 图片不会拉伸或者压缩,原尺寸大小,不会发生变形 调用该接口必须在设置主题之后,否则主题刷新会覆盖图片

- (BOOL)addBackgroundImageWithImage:(UIImage *)backgroundImage

Parameters

backgroundImage

背景图片,图片必须包含有alpha通道

Return Value

设置成功结果

Declared In

FMKMapView.h

– removeBackgroundImage

清除背景图片

- (void)removeBackgroundImage

Declared In

FMKMapView.h

  gestureEnableController

地图手势控制器 所有手势开关默认开启

@property (nonatomic, strong, readonly) FMKMapGestureEnableController *gestureEnableController

Declared In

FMKMapView.h

  animationEnableController

地图手势动画控制器,常用的平移动画操作

@property (nonatomic, strong, readonly) FMKAnimationEnableController *animationEnableController

Declared In

FMKMapView.h

– moveFromStart:toEnd:

移动地图

- (void)moveFromStart:(CGPoint)startPoint toEnd:(CGPoint)endPoint

Parameters

startPoint

起点坐标 屏幕坐标

endPoint

终点坐标 屏幕坐标

Declared In

FMKMapView.h

– moveToViewCenterFromMapPoint:animated:

将某个地图坐标点移动到屏幕中央

- (void)moveToViewCenterFromMapPoint:(FMKMapPoint)mapPoint animated:(BOOL)animated

Parameters

mapPoint

目标点

animated

动效开关

Declared In

FMKMapView.h

– getMapViewCenter

获取地图视图的中心点

- (FMKMapPoint)getMapViewCenter

Return Value

fengmap地图中心点坐标

Declared In

FMKMapView.h

– coverPoint:

屏幕坐标转换为地理坐标

- (FMKGeoCoord)coverPoint:(CGPoint)point

Parameters

point

屏幕点坐标

Return Value

蜂鸟地理坐标,包含楼层ID和地理坐标值

Declared In

FMKMapView.h

– coverCoord:zType:

地理坐标转换为屏幕坐标

- (CGPoint)coverCoord:(FMKGeoCoord)coord zType:(FMKMapCoordZType)type

Parameters

coord

蜂鸟地图坐标

type

该参数为转换坐标时的Z值,Z值影响坐标转化后的y坐标值

Return Value

返回屏幕点坐标

Declared In

FMKMapView.h

– updateMap

更新地图

- (void)updateMap

Declared In

FMKMapView.h

– clearMapView

清除地图

- (void)clearMapView

Declared In

FMKMapView.h

– setMapViewPort:

修改地图视口

- (void)setMapViewPort:(CGRect)bounds

Parameters

bounds

地图窗口size

Discussion

当地图所在页面size发生改变时,修改地图视口适应窗口尺寸变化,常见于当地图所在视图frame发生变化后调用

Warning: 页面的size发生变化后必须主动调用该接口,否则会造成地图显示异常

Declared In

FMKMapView.h

– setFitView:

根据传入的地图点集合重新计算地图可是区域大小和缩放比例

- (void)setFitView:(NSArray<NSValue*> *)mapPoints

Parameters

mapPoints

地图点坐标集合,内为FMKMapPoint结构体,点数必须大于1,否则无效果

Discussion

该方法只能在地图加载完成后调用,在调用该方法后地图会发生平移缩放效果,视角切换到俯视角度下

Declared In

FMKMapView.h

– setMultiGroupFitViewWithNaviResults:

设置多层路径线自适应显示 内部会为displayGroupIDs属性赋值,并默认修改焦点楼层

- (void)setMultiGroupFitViewWithNaviResults:(NSArray<FMKNaviResult*> *)naviresults

Parameters

naviresults

路径规划结果

Declared In

FMKMapView.h