VCustomLayer
VCustomLayer
组件用于添加自定义图层,可配置渲染模式和自定义渲染方法。
基础用法
使用 Threebox
插件将 3D 模型添加到地图,并使其场景相机与 Mapbox 相机保持同步。
API
customLayerProps
属性名 | 说明 | 类型 | 默认值 |
---|---|---|---|
renderingMode | 渲染模式 | enum | 2d |
render | 渲染方法 | Function | 必填 |
prerender | 预渲染方法 | Function | - |
renderToTile | 渲染到瓦片方法 | Function | - |
shouldRerenderTiles | 是否重新渲染瓦片 | Function | - |
onAdd | 添加到地图时触发的回调方法 | Function | - |
onRemove | 从地图中移除时触发的回调方法 | Function | - |
slot | 图层槽位 | string | - |
order | 图层顺序 | number | - |
customLayerEmits
事件名 | 说明 | 回调参数 |
---|---|---|
load | 图层加载完成时触发 | (e: CustomLayerLoadEvent) => true |
类型定义
CustomLayerLoadEvent
typescript
export interface CustomLayerLoadEvent {
layer: CustomLayerInterface
source: undefined
map: Map
}
CustomLayerRenderMethod
typescript
export type CustomLayerRenderMethod = (
gl: WebGL2RenderingContext,
matrix: Array<number>,
projection?: ProjectionSpecification,
projectionToMercatorMatrix?: Array<number>,
projectionToMercatorTransition?: number,
centerInMercator?: Array<number>,
pixelsPerMeterRatio?: number
) => void