Skip to content

@indoor-map/fmap-jsDocs


地图核心类 负责地图的初始化、生命周期管理和基础视图控制

Constructors

new FMap()

new FMap(options): FMap

Parameters

options: FMapOptions

Returns

FMap

Accessors

FMType

Get Signature

get FMType(): object

获取 SDK FMType 枚举(要素类型常量)

Returns

object

FMType 枚举对象

BUILDING

BUILDING: number

CAD_LAYER

CAD_LAYER: number

COMPOSITE_MARKER

COMPOSITE_MARKER: number

DOM_MARKER

DOM_MARKER: number

DYNAMIC_MODEL

DYNAMIC_MODEL: number

EXTERNAL_MODEL

EXTERNAL_MODEL: number

EXTRUDE_MARKER

EXTRUDE_MARKER: number

FACILITY

FACILITY: number

FIRE_MARKER

FIRE_MARKER: number

GROUND_LAYER

GROUND_LAYER: number

HEATMAP

HEATMAP: number

IMAGE_MARKER

IMAGE_MARKER: number

LABEL

LABEL: number

LINE_MARKER

LINE_MARKER: number

LINE3D_MARKER

LINE3D_MARKER: number

LOCATION_MARKER

LOCATION_MARKER: number

MAP_MASK

MAP_MASK: number

MODEL

MODEL: number

POLYGON_MARKER

POLYGON_MARKER: number

SPHERE_MARKER

SPHERE_MARKER: number

TEXT_MARKER

TEXT_MARKER: number

THREED_TILES_LAYER

THREED_TILES_LAYER: number

TILE_LAYER

TILE_LAYER: number

TUBE_MARKER

TUBE_MARKER: number

WALL_MARKER

WALL_MARKER: number


isDisposed

Get Signature

get isDisposed(): boolean

是否已销毁

Returns

boolean


isLoaded

Get Signature

get isLoaded(): boolean

是否已加载完成

Returns

boolean


state

Get Signature

get state(): FMapState

获取地图实时状态对象 可通过 subscribe 订阅状态变化,或通过 getSnapshot 读取当前快照

Returns

FMapState

Methods

coordMapToScreen()

coordMapToScreen(x, y, z?, level?): object

地图坐标转屏幕坐标

Parameters

x: number

地图 X 坐标

y: number

地图 Y 坐标

z?: number

高度

level?: number

楼层

Returns

object

屏幕坐标

x

x: number

y

y: number


coordScreenToMap()

coordScreenToMap(x, y, options?): object

屏幕坐标转地图坐标

Parameters

x: number

屏幕 X 坐标

y: number

屏幕 Y 坐标

options?: Record<string, unknown>

选项

Returns

object

地图坐标

x

x: number

y

y: number


disableUpdateRender()

disableUpdateRender(): void

禁用渲染更新

Returns

void


dispose()

dispose(): void

释放地图资源 销毁地图实例,释放所有资源

Returns

void


enableUpdateRender()

enableUpdateRender(): void

启用渲染更新

Returns

void


focusTo()

focusTo(options): void

高层 moveTo:切到目标楼层、切 2D、居中,并按“目标点周边半径”自适应缩放(瞬间完成)。

Parameters

options: FocusToOptions

focusTo 配置

Returns

void


getBound()

getBound(): FMBound

获取地图范围

Returns

FMBound

地图范围


getCenter()

getCenter(): object

获取地图中心点

Returns

object

中心点坐标

x

x: number

y

y: number


getFloor()

getFloor(level): FMFloor

获取楼层对象

Parameters

level: number

楼层级别

Returns

FMFloor

楼层对象


getFloorInfos()

getFloorInfos(): unknown[]

获取所有楼层信息

Returns

unknown[]

楼层信息数组


getLevel()

getLevel(): number

获取当前楼层级别

Returns

number

楼层级别


getMap()

getMap(): FMMap

获取底层 SDK 地图实例

Returns

FMMap

SDK 地图实例


getOptions()

getOptions(): FMapOptions

获取配置选项

Returns

FMapOptions

当前配置


getState()

getState(): unknown

获取地图状态

Returns

unknown

地图状态


getViewMode()

getViewMode(): number

获取当前显示模式

Returns

number

显示模式


getZoomValue()

getZoomValue(): number

获取当前缩放级别

Returns

number

缩放级别


init()

init(mapID?, container?): Promise<FMMap>

初始化地图 创建底层 SDK 地图实例并加载地图数据

Parameters

mapID?: string

地图ID,可选,不传则使用构造时的 mapID

container?: string | HTMLElement

可选,覆盖构造时的容器参数(支持 HTMLElement 或 CSS 选择器字符串)

Returns

Promise<FMMap>

Promise,加载完成后 resolve


moveTo()

moveTo(options): void

移动地图到指定位置 通过 setState 实现(SDK 无 moveTo 方法)

Parameters

options

移动选项

options.animate?: boolean

options.duration?: number

options.finish?

options.rotation?: number

options.tiltAngle?: number

options.x?: number

options.y?: number

options.zoomValue?: number

Returns

void


off()

off(type, callback?): void

移除事件监听

Parameters

type: string

事件类型

callback?: EventCallback

回调函数,不传则移除该类型所有监听

Returns

void


on()

on(type, callback): void

监听地图事件

Parameters

type: string

事件类型: loaded, click, mousemove, levelChanged, viewChanged, floorSpaceChanged, update, visibleFloorLoaded 等

callback: EventCallback

回调函数

Returns

void


resetView()

resetView(animate): void

重置视图到初始状态 恢复旋转角度、倾斜角度、缩放级别到初始值

Parameters

animate: boolean = true

是否使用动画,默认 true

Returns

void


setDevicePixelRatio()

setDevicePixelRatio(dpr): void

设置设备像素比

Parameters

dpr: number

设备像素比

Returns

void


setHighlightColor()

setHighlightColor(color): void

设置高亮颜色

Parameters

color: string

颜色值

Returns

void


setRotation()

setRotation(rotation, animate, duration): void

设置旋转角度

Parameters

rotation: number

旋转角度(0-360)

animate: boolean = true

是否动画

duration: number = 0.3

动画时长(秒)

Returns

void


setState()

setState(state, options?): void

设置地图状态

Parameters

state: Record<string, unknown>

状态对象

options?: Record<string, unknown>

动画选项

Returns

void


setTiltAngle()

setTiltAngle(tiltAngle, animate, duration): void

设置倾斜角度

Parameters

tiltAngle: number

倾斜角度(0-90)

animate: boolean = true

是否动画

duration: number = 0.3

动画时长(秒)

Returns

void


setViewMode()

setViewMode(mode, animate, _duration): void

设置显示模式

Parameters

mode: number

显示模式,FMViewMode.MODE_2D(4) 表示 2D,FMViewMode.MODE_3D(2) 表示 3D

animate: boolean = true

是否动画

_duration: number = 0.2

Returns

void


setZoomValue()

setZoomValue(value, animate): void

设置缩放级别

Parameters

value: number

缩放级别

animate: boolean = true

是否动画

Returns

void


zoomIn()

zoomIn(): void

放大地图

Returns

void


zoomOut()

zoomOut(): void

缩小地图

Returns

void


isSDKLoaded()

static isSDKLoaded(): boolean

检查 fengmap SDK 是否已加载

Returns

boolean

是否已加载

基于蜂鸟视图 Fengmap SDK 构建