fuchengshen
2022-07-09 3a25c05b5ab837714f30469cdcb1e2a77d8d7f6c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import * as mars3d from "mars3d"
 
export let map
 
// 需要覆盖config.json中地图属性参数(当前示例框架中自动处理合并)
export const mapOptions = {
  scene: {
    center: { lat: 20.772952, lng: 82.609338, alt: 22604251, heading: 0, pitch: -90 }
  }
}
 
/**
 * 初始化地图业务,生命周期钩子函数(必须)
 * 框架在地图初始化完成后自动调用该函数
 * @param {mars3d.Map} mapInstance 地图对象
 * @returns {void} 无
 */
export function onMounted(mapInstance) {
  map = mapInstance // 记录map
 
  // 2也可以通过下面方法获取center参数
  const center = map.getCameraView()
  console.log("center参数为", JSON.stringify(center))
 
  // 可以通过centerAt切换视角
  map.setCameraView(center)
}
 
 
// 视图切换
export function sceneMode(name) {
  const value = Number(name)
  setSceneOptions("sceneMode", value)
}
 
export function setSceneOptions(name, value) {
  const options = {}
  options[name] = value
 
  console.log("更新了地图参数", options)
  map.setSceneOptions(options)
}
 
export function setSceneGlobeOptions(name, value) {
  const options = { globe: {} }
  options.globe[name] = value
 
  console.log("更新了地图参数", options)
  map.setSceneOptions(options)
}
 
export function setSceneCameraControllerOptions(name, value) {
  const options = { cameraController: {} }
  options.cameraController[name] = value
 
  console.log("更新了地图参数", options)
  map.setSceneOptions(options)
 
  if (name === "constrainedAxis" && value === true) {
    map.camera.constrainedAxis = Cesium.Cartesian3.UNIT_Z
  }
}
 
// 是否显示底图
export function showBaseMap(val) {
  if (val === "1") {
    map.basemap = 2021
  } else {
    map.basemap = undefined
  }
}