From 87e98d5b5efeb7a9cf6330ae03e6dd53699b7ef1 Mon Sep 17 00:00:00 2001
From: surprise <15810472099@163.com>
Date: 星期一, 15 一月 2024 17:10:25 +0800
Subject: [PATCH] 代码更新

---
 src/assets/js/Layer/model.js |   56 +++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 47 insertions(+), 9 deletions(-)

diff --git a/src/assets/js/Layer/model.js b/src/assets/js/Layer/model.js
index b1bd8c6..6f768c9 100644
--- a/src/assets/js/Layer/model.js
+++ b/src/assets/js/Layer/model.js
@@ -1,3 +1,4 @@
+import { updateUserPwd } from "../../../api/api";
 import store from "../../../store";
 import Bus from "@tools/Bus";
 const model = {
@@ -10,6 +11,10 @@
         this.title = item;
         this.setModelMouseMove();
     },
+    changeBatchLayer(item, res) {
+        store.state.addModelFlag = res;
+        this.title = item;
+    },
     deleteAll() {
         if (!this.modelLayer) return;
         for (var i = 0; i < this.modelLayer._primitives.length; i++) {
@@ -20,9 +25,18 @@
     },
     setModelCoord(res) {
         store.state.addModelFlag = false;
-        this.setModelMouseMove();
+        // this.setModelMouseMove();
         if (res) {
-            var id = new Date().getTime();
+            // 闀垮害涓�62鐨勬暟鐮佹暟缁�
+            var result = []
+            var arr = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9"];
+            for (var i = 0; i < 4; i++) {
+                var num = Math.floor(Math.random() * 62);
+                result.push(arr[num]);
+            }
+            result.join('')
+            var id = new Date().getTime() - Math.floor(Math.random() * 9000) + result;
+
             var obj = {
                 id: id,
                 sourceType: 'GLB',
@@ -32,7 +46,7 @@
                     name: this.title.name,
                     longitude: res.longitude,
                     latitude: res.latitude,
-                    altitude: res.altitude,
+                    altitude:  18.1,
                     heading: res.heading,
                     pitch: res.pitch,
                     roll: res.roll,
@@ -41,11 +55,10 @@
                     id: id,
                     sourceType: 'GLB',
                 }
+
             }
             Bus.$emit("addOtherData", "瀵硅薄", obj);
-
         }
-
     },
     setModelMouseMove() {
         if (store.state.addModelFlag) {
@@ -70,12 +83,13 @@
         this.getModelLayer();
         var modelMatrix = this.getModelMatrix(res.style);
         var url = layerData.config.Model_URL + res.style.url;
- 
+
         var model = this.modelLayer.add(Cesium.Model.fromGltf({
             id: res.id,
             url: url,
             scale: res.scale,
-            minimumPixelSize: 64,
+            minimumPixelSize: 1,
+            maximumScale: 10,
             modelMatrix: modelMatrix
 
         }));
@@ -164,7 +178,6 @@
         var sm = Cesium.Matrix4.fromScale(new Cesium.Cartesian3(res.scale, res.scale, res.scale), new Cesium.Matrix4());
         model.modelMatrix = Cesium.Matrix4.multiply(model.modelMatrix, sm, model.modelMatrix);
     },
-
     getModelMatrix(res) {
         var headingPitchRoll = new Cesium.HeadingPitchRoll(res.heading, res.pitch, res.roll);
         var position = Cesium.Cartesian3.fromDegrees(res.longitude, res.latitude, res.altitude);
@@ -174,7 +187,6 @@
             new Cesium.Matrix4());
         return modelMatrix;
     },
-
     getModelLayer() {
         if (this.modelLayer == null) {
             this.modelLayer = new Cesium.PrimitiveCollection();
@@ -182,5 +194,31 @@
             Viewer.scene.primitives.add(this.modelLayer);
         }
     },
+    addImgUpLayer(res) {
+        var url = layerData.config.Model_URL + '/Data/img/mark1.png'
+        var citizensBankPark = viewer.entities.add({
+            name: res.name,
+            id: res.id,
+            position: Cesium.Cartesian3.fromDegrees(res.x, res.y, res.z),
+            billboard: { //鍥炬爣
+                image: url,
+                width: 32,
+                height: 44,
+                pixelOffset: new Cesium.Cartesian3(0, -40, 0),
+            },
+            properties: res,
+        });
+
+    },
+    delImgUpLayer(res) {
+        var entity = Viewer.entities._entities._array;
+        for (var i = 0; i < entity.length; i++) {
+            var model = entity[i]
+            if (model.id === res.id) {
+                Viewer.entities.remove(model)
+            }
+        }
+
+    },
 }
 export default model;
\ No newline at end of file

--
Gitblit v1.9.3