Skip to content

API 概览

BicMap 提供了一套完整的地图交互 API,涵盖从地图初始化到高级渲染的全流程。

API 模块

模块主要方法说明
地图初始化bicMap.init() · bicMap.createMap()初始化引擎,创建地图实例
基础操作map.flyTo() · map.setCenter()视角控制、缩放、旋转等
标记功能addDirectionalMarker() · addBatchPOIMarkers() · addRobotMarkers()方向标记、批量 POI、机器人标记
绘制功能enablePolygonDrawing() · enablePolylineDrawing() · enableRectangleDrawing()多边形、折线、矩形绘制
要素功能createPolygons() · createPolylines() · createWideLines()静态要素展示与编辑
点云渲染createPointCloud()WebGL 点云渲染
SLAM 地图bicMap.loadSlamMap()SLAM 建图数据加载与显示
工具函数MapUtils.GPSToCartesian() · bicMap.turf坐标转换、几何计算

全局对象

js
import bicMap from '@x-humanoid-cloud/bic-map'

bicMap 是全局单例对象,所有 API 都挂载在它上面。

初始化流程

js
// 必须先 init,再 createMap
await bicMap.init()

const map = bicMap.createMap({ container: 'map', zoom: 13 })

map.on('load', () => {
  // 在 load 事件后调用其他 API
  bicMap.addZoomControl(map, 'bottom-right')
})

WARNING

所有地图操作 API 必须在 map.on('load', ...) 之后调用,确保地图已完成加载。

控制器对象

大多数 API 会返回一个控制器对象,用于后续管理:

js
const markersController = bicMap.addBatchPOIMarkers(map, points, options)

// 后续操作通过控制器进行
markersController.updateMarkers(newPoints)
markersController.selectById('poi-1')
markersController.remove()   // 销毁并清理

内存管理

组件卸载(onBeforeUnmount)时,记得调用各控制器的 .remove() 方法清理资源,防止内存泄漏。