From 2c680fa0913b9ff1e8e7a4f8bc3dd49543fc97b5 Mon Sep 17 00:00:00 2001
From: husq <931347610@qq.com>
Date: Mon, 09 Oct 2023 15:19:43 +0800
Subject: [PATCH] 地图基本功能-放大缩小
---
src/hooks/use-cesium-tsa.ts | 25 ++++++++++++++++++++-----
1 files changed, 20 insertions(+), 5 deletions(-)
diff --git a/src/hooks/use-cesium-tsa.ts b/src/hooks/use-cesium-tsa.ts
index 4ed342b..d6d00b7 100644
--- a/src/hooks/use-cesium-tsa.ts
+++ b/src/hooks/use-cesium-tsa.ts
@@ -34,7 +34,6 @@
let handler: Cesium.ScreenSpaceEventHandler
const dimension = ref(3)
const _init = () => {
- if (viewer) return
// Cesium Token
const cesiumToken = import.meta.env.VITE_CESIUM_TOKEN
Cesium.Ion.defaultAccessToken = cesiumToken
@@ -160,6 +159,20 @@
dimension.value = 3
}
}
+
+ // 长按实现地图放大
+ const zoonIn = (range:number) => {
+ // 获取当前视角的高度
+ const cameraHeight = viewer?.camera.positionCartographic.height
+ const amout = Cesium.Math.sign(range) * cameraHeight / Math.log(cameraHeight)
+ viewer?.camera.zoomIn(amout)
+ }
+ // 长按实现地图缩小
+ const zoonOut = (range:number) => {
+ const cameraHeight = viewer?.camera.positionCartographic.height
+ const amout = Cesium.Math.sign(range) * cameraHeight / Math.log(cameraHeight)
+ viewer?.camera.zoomOut(amout)
+ }
onMounted(() => {
if (viewer) return
_init()
@@ -169,15 +182,17 @@
})
// 销毁地图模型
- onUnmounted(() => {
- viewer = null
- })
+ // onUnmounted(() => {
+ // // viewer = null
+ // })
return {
addPoint,
removeAllPoint,
flyTo,
removeById,
switchModel,
- dimension
+ dimension,
+ zoonIn,
+ zoonOut
}
}
--
Gitblit v1.9.3