Skip to content

BMap3D 组件 API ​

Props ​

名称类型默认值说明
dataBMap3DData{}GeoJSON、图层数据和视觉配置。
assetsAssets | nullnull外部资源管理对象。
autoLoadbooleantrue未传 assets 时自动加载内置资源。
autoplaybooleantrue场景创建后恢复 RAF 并播放入场动画。

data.mapJson 在场景创建时必填。若要延迟提供 GeoJSON,应同时设置 :auto-load="false",准备好数据与资源后调用 load(assets)。

Events ​

事件参数触发时机
readyMap3DWorld资源完成、WebGL 场景创建后。
progressLoadProgress内置资源加载进度变化。
errorunknown资源加载失败。
play-completevoid入场时间线播放完成。
map-clickRecord<string, unknown>点击行政区且指针移动未超过阈值。

ref 方法 ​

方法参数说明
loadAssets使用指定资源创建场景。只在场景尚未创建时生效。
play—恢复 RAF 并继续入场时间线。
pause—暂停 RAF。
updateDataPartial<BMap3DData>更新任意数据或配置。
updateBarsProvinceDatum[]局部更新区域柱图及关联飞线。
updateInfoPointsInfoPointDatum[]局部更新信息点。
setBarsVisibleboolean显示或隐藏柱图。
setInfoPointVisibleboolean显示或隐藏信息点。
setFlyLineVisibleboolean显示或隐藏飞线。
setDiffuseVisibleboolean显示或隐藏扩散效果。
setRotateBorderVisibleboolean显示或隐藏旋转边界。
destroy—销毁场景并释放监听、动画和 WebGL 资源。

获取内部实例 ​

js
const world = mapRef.value?.world

模板 ref 会自动解包组件暴露的 world shallow ref,因此在组件外通常直接得到 Map3DWorld | null。

TypeScript ​

包提供 types/index.d.ts,可导入公共类型:

ts
import type {
  BMap3DData,
  BMap3DExpose,
  InfoPointDatum,
  ProvinceDatum,
} from 'b-map3d'

BMap3D · Vue 3 spatial component