# # 地图场景 mapgis-web-scene

## # 属性

### # `libPath`

- Type: `String`
- 非侦听属性 非 watch 属性
- Default: `http://develop.smaryun.com:8899/static/libs/cdn/cesium/Cesium.js`
- - Description: cesium 原生 js 实现. 一般是指定为用户代码 public 的`path/to/cesium`的路径。

### # `pluginPath`

- Type: `String`
- 非侦听属性 非 watch 属性
- Default: `http://develop.smaryun.com:8899/static/libs/cdn/zondyclient/webclient-cesium-plugin.min.js`
- - Description: cesium 中地插件增强实现， 一般是指定为用户代码 public 的`path/to/cesium`的路径。
- `path/to/cesium`的目录下一般是成对存在

      path-to-cesium
         |--- Cesium.js                        # libPath
         |--- webclient-cesium-plugin.html     # Debug 版本说明文件
         |--- webclient-cesium-plugin.js       # Debug pluginPath
         |--- webclient-cesium-plugin.min.html # Release 版本说明文件
         |--- webclient-cesium-plugin.min.js   # Release pluginPath

### # `vueKey`

- Type: `String`
- 非侦听属性 非 watch 属性
- Default: `default`
- - Description: 该 key 的主要作用市用来记录 Cesium 的 Source,primitive,entity 的内存中的引用数组的引用，从而避免 vue 对 cesium 的内存劫持

### # `vueIndex`

- Type: `[String, Number]`
- 非侦听属性 非 watch 属性
- Default: `cesium-${("" + Math.random()).split(".")[1]}`
- - Description: 该 key 的主要作用市用来记录 Cesium 的 Source,primitive,entity 的内存中的引用数组的引用，从而避免 vue 对 cesium 的内存劫持

### # `container`

- Type: `[String, HTMLElement]`
- 非侦听属性 非 watch 属性
- Default: `cesium-${("" + Math.random()).split(".")[1]}`
- - Description: Cesium-WebGlobe 绑定的 Dom 元素对象

### # `keyEventEnable`

- Type: `Boolean`
- 非侦听属性 非 watch 属性
- Default: `true`
- - Description: Cesium 键盘事件是否激活

### # `viewerMode`

- Type: `String`
- 非侦听属性 非 watch 属性
- Default: `3D`
- - Description: 初始视图模式默认为三维球视图 '2D'表示二维视图 'COLUMBUS_VIEW' 表示三维平面视图

### # `showInfo`

- Type: `Boolean`
- 非侦听属性 非 watch 属性
- Default: `false`
- - Description: 是否显示默认的属性信息框

### # `animation`

- Type: `Boolean`
- 非侦听属性 非 watch 属性
- Default: `false`
- - Description: 默认动画控制不显示

### # `timeline`

- Type: `Boolean`
- 非侦听属性 非 watch 属性
- Default: `false`
- - Description: 默认时间轴控制不显示

### # `baseLayerPicker`

- Type: `Boolean`
- 非侦听属性 非 watch 属性
- Default: `false`
- - Description: 默认图层选择器不实现

### # `fullscreenButton`

- Type: `Object`
- 非侦听属性 非 watch 属性
- Default: `null`
- - Description: 默认全屏控件不显示

### # `vrButton`

- Type: `Object`
- 非侦听属性 非 watch 属性
- Default: `null`
- - Description: 默认 VR 控件不显示

### # `contextOptions`

- Type: `Object`
- 非侦听属性 非 watch 属性
- Default:

      {
        webgl: {
          preserveDrawingBuffer: true; //默认激活WebGL打印输出能力
        }
      }

- - Description: 上下文环境

### # `cameraView`

- Type: `Object`
- 非侦听属性 非 watch 属性
- Default:

      {
           destination: {
             x: -5087907.392038159,
             y: 14207074.175879652,
             z: 3655215.2541255946
           },
           orientation: {
             heading: 6.1827568973283045,
             pitch: -1.2409374391413084,
             roll: 0.0003114284469649675
           }
         }

- - Description: 默认视图位置

## # 事件

事件载荷由以下三部分组成

- `Cesium` Cesium 原生 js 脚本
- `CesiumZondy` CesiumZondy 中地数码的 Cesium 增强插件
- `component` 发送当前事件的组件

### # `@load`

- Description: 在地图场景加载完毕后发送该事件
- Payload `{ Cesium, CesiumZondy, component }`
- - `Cesium` Cesium 原生 js 脚本
  - `CesiumZondy` CesiumZondy 中地数码的 Cesium 增强插件
  - `component` 发送当前事件的组件

请注意 Cesium`原生的`EventHandle 的事件还是由原生的方式来控制，此处只上传`vue框架`层面的事件