From 951aacd10e070d3c9867dbb19404bc470f2e3aad Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Wed, 29 Nov 2023 10:20:59 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/demo' into demo

---
 src/hooks/use-cesium-tsa.ts |   13 ++++++-------
 1 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/src/hooks/use-cesium-tsa.ts b/src/hooks/use-cesium-tsa.ts
index 77c6b20..dacf74c 100644
--- a/src/hooks/use-cesium-tsa.ts
+++ b/src/hooks/use-cesium-tsa.ts
@@ -46,7 +46,7 @@
 // 定义全局的viewer变量防止重复生成
 // eslint-disable-next-line no-var
 var viewer: Cesium.Viewer | null = null
-export function cesiumOperation() {
+export function cesiumOperation () {
   let handler: Cesium.ScreenSpaceEventHandler
   const TDT_Token = 'c6eea7dad4fa1e2d1e32ec0e7c9735db'
   // 天地图Key
@@ -184,9 +184,8 @@
       }
     })
   }
-
-  let leftClickHandler: Cesium.ScreenSpaceEventHandler
   // 添加点击事件
+  let leftClickHandler: Cesium.ScreenSpaceEventHandler
   const addClickEvent = (sid: string, cb: Function) => {
     if (leftClickHandler) {
       removeClickEvent()
@@ -194,7 +193,7 @@
     leftClickHandler = new Cesium.ScreenSpaceEventHandler(viewer?.scene.canvas)
     leftClickHandler.setInputAction(function (click: { position: Cesium.Cartesian2 }) {
       const pick = viewer?.scene.pick(click.position)
-      if (pick && pick.id._id === sid) {
+      if (pick && (pick.id._id === sid || pick.id._id.includes(sid))) {
         cb(click, pick, viewer, handler)
       }
     }, Cesium.ScreenSpaceEventType.LEFT_CLICK)
@@ -213,7 +212,7 @@
   }
 
   // 通过点ID删除
-  function removeById(id: string) {
+  function removeById (id: string) {
     viewer?.entities.removeById(id)
     const pointEntity = viewer?.entities.getById(id)
     if (pointEntity && pointEntity !== undefined) {
@@ -221,12 +220,12 @@
     }
   }
   // 通过点ID获取实体
-  function getEntityById(id: string) {
+  function getEntityById (id: string) {
     const pointEntity = viewer?.entities.getById(id)
     return pointEntity
   }
   // 更新图片实体位置
-  function updateEntityPosition(longitude: number, latitude: number, id: string, params?: any) {
+  function updateEntityPosition (longitude: number, latitude: number, id: string, params?: any) {
     const entity = getEntityById(id) as Cesium.Entity
     const position = Cesium.Cartesian3.fromDegrees(longitude, latitude)
     const heading = Cesium.Math.toRadians(-params.heading)

--
Gitblit v1.9.3