Skip to content

3DTile图层(Tile3dLayer)

示例

效果图

3D Layer

示例源码
vue
<template>
  <div style="height: 400px">
    <mb-map ref="map" :zoom="8" :pitch="20">
      <mb-tianditu-layer :types="['img']" />
      <mb-tile-3d-layer
        :data="__RESOURCE_URL__ + '3dTiles/example/tileset.json'"
        @loaded="tileLoadedHandler"
      />
    </mb-map>
  </div>
</template>

<script setup lang="ts">
import { ref } from 'vue'

const map = ref()

const tileLoadedHandler = (tileset) => {
  map.value.flyTo({
    center: [tileset.cartographicCenter[0], tileset.cartographicCenter[1]],
    zoom: 17,
  })
}
</script>

API

PROPS

名称描述类型默认值
id图层Idstring-
auto-highlight本属性为true且pickable为true时,则会将鼠标悬浮选中的对象设为高亮booleanfalse
data图层源数据string / IndexAny / AnyArr / Promise<any>''
highlight-color要与高亮对象原始颜色进行混合(blend)的颜色值string / number[][255, 255, 128, 1]
highlighted-object-index高亮元素序号number-1
opacity透明度number1
pickable图层是否会响应鼠标事件,若为false,则组件不会emit鼠标相关事件booleanfalse
point-size点尺寸number1
show是否显示booleantrue

EVENTS

名称描述参数
created初始化完成事件-
mousemove-{ object: any; coordinates: mapboxgl.LngLat; pixel: [number, number] }
mouseleave--
click-{ object: any; coordinates: mapboxgl.LngLat; pixel: [number, number] }
loaded-tileset

SLOTS

名称描述

METHODS

名称描述定义