Skip to content

Viewer 视图


演练场

引入

ts
import { Viewer } from "@m-tech/gis-core";

new Viewer(viewerContainer, options);

入参

参数名称类型必填默认值描述
viewerContainerHTMLElement-容器
optionsobject{}配置项
options.defaultViewArray<number>-默认视图
options.imageryProviderTypeImageryProviderTypeTMap影像类型
options.imageryTypeImageryTypeIMG_C在线地图类型
options.
depthTestAgainstTerrain
booleanfalse是否开启地形深度测试
options.viewerModeViewerMode3D视图模式
options.locationBarbooleanfalse是否显示位置栏
options.navigationVisiblebooleanfalse是否显示导航栏
options.
debugShowFramesPerSecond
booleanfalse是否显示帧率

提示

Viewer 继承自 CesiumViewer,因此 CesiumViewer配置项 也可以使用。

属性

属性类型读/写描述
cursorstring读写鼠标样式
pickingStyleCursorstring读写拾取样式
cameraPositionPosition相机位置
levelnumber地图缩放层级
centerPositionPosition地图中心点坐标
defaultViewPosition读写默认视图
defaultCenterPosition读写默认中心点
viewerModeViewerMode读写视图模式
is2Dboolean是否为 2D 模式
is3Dboolean是否为 3D 模式
enableLightingboolean读写是否开启光照

方法

  • on(type: ViewerEventType | SceneEventType, callback: Function, context: ctx)

设置事件监听。

  • off(type: ViewerEventType | SceneEventType, callback: Function, context: ctx)

移除事件监听。

  • setImageryLayer(imageryProviderType: ImageryProviderType, imageryType?: ImageryType, isDefault?: boolean)

设置在线地图图层。

  • getImageryLayers(imageryProviderType?: ImageryProviderType, imageryType?: ImageryType)

获取在线地图图层。

  • removeDefaultLayers()

移除默认图层,包含默认在线底图。

  • removeImageryLayer(layer?: Layer)

移除影像图层。

  • addLayer(layer: Layer)

添加图层。

  • removeLayer(layer: Layer)

移除图层。

  • addLayers(layers: Layer[])

添加多个图层。

  • removeLayers(layers: Layer[])

移除多个图层。

  • hasLayer(layer: Layer)

检查是否包含该图层。

  • getLayer(id: string)

根据 id 获取图层。

  • eachLayer(method: Function, context: any)

遍历图层。

  • addEffect(effect: Effect)

添加粒子效果。

  • removeEffect(effect: Effect)

移除粒子效果。

  • addWidget(widget?: Widget)

添加控件。

  • removeWidget(widget?: Widget)

移除控件。

  • getWidgets()

获取当前地图上的全部控件。

示例

vue
<template>
  <div ref="viewerContainer" style="position: relative;" />
</template>

<script setup lang="ts">
import { ref, onMounted } from "vue";
import { Viewer, ViewerMode } from "@m-tech/gis-core";

const viewerContainer = ref();

onMounted(() => {
  const viewer = new Viewer(viewerContainer.value, {
    defaultView: [114.31347646, 30.46387381, 2500, 0, -45, 0], // 默认视图
    viewerMode: ViewerMode["3D"], // 视图模式
    locationBar: true, // 是否显示位置栏
    navigationVisible: true, // 是否显示导航栏
    debugShowFramesPerSecond: true, // 是否显示帧率
  });
});
</script>

MGis 地理三维库