From 0f964b3a9286c6483c9e10ab24a856d5833327a3 Mon Sep 17 00:00:00 2001 From: caill <815519168@qq.com> Date: Tue, 2 Sep 2025 17:09:26 +0800 Subject: [PATCH] =?UTF-8?q?add=E5=85=B3=E9=97=AD=E7=82=B9=E4=BA=91?= =?UTF-8?q?=E5=92=8C=E5=B0=8F=E8=BD=A6=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/i18n/langs/en.js | 5 +- src/i18n/langs/zh.js | 5 +- src/pages/modules/building.vue | 37 ++- src/pages/modules/gl-map-3.vue | 448 --------------------------------- src/pages/modules/gl-map-4.vue | 20 +- 5 files changed, 53 insertions(+), 462 deletions(-) delete mode 100644 src/pages/modules/gl-map-3.vue diff --git a/src/i18n/langs/en.js b/src/i18n/langs/en.js index 5c3b208..feba33f 100644 --- a/src/i18n/langs/en.js +++ b/src/i18n/langs/en.js @@ -110,5 +110,8 @@ module.exports = { Systemsettings: 'System settings', Control: 'Control', Obstacleforklifts: 'Obstacle avoidance between forklifts', - Syncsuccessfully: 'Sync successfully' + Syncsuccessfully: 'Sync successfully', + EnablePointCloud: 'Enable Point Cloud', + DisablePointCloud: 'Disable Point Cloud', + CartPosition: 'Cart Position' } diff --git a/src/i18n/langs/zh.js b/src/i18n/langs/zh.js index 96f122f..faff3ef 100644 --- a/src/i18n/langs/zh.js +++ b/src/i18n/langs/zh.js @@ -110,5 +110,8 @@ module.exports = { Systemsettings: '系统设置', Control: '控制', Obstacleforklifts: '叉间避障', - Syncsuccessfully: '同步成功' + Syncsuccessfully: '同步成功', + EnablePointCloud: '开启点云', + DisablePointCloud: '关闭点云', + CartPosition: '小车位置' } diff --git a/src/pages/modules/building.vue b/src/pages/modules/building.vue index 0cd9c2f..dd69bc2 100644 --- a/src/pages/modules/building.vue +++ b/src/pages/modules/building.vue @@ -4,8 +4,14 @@ - - + + + + +
{{$t('CartPosition')}}: {{ carPosition.x }}, {{carPosition.y}}
+
+
+ @@ -108,6 +114,7 @@ export default { } } return { + cloudOff: false, driver: null, driverActive: true, needsConfirmation: true, @@ -134,7 +141,7 @@ export default { } }, computed: { - ...mapGetters(['isTop']) + ...mapGetters(['isTop', 'carPosition']) }, beforeDestroy () { document.removeEventListener('keydown', this.handleKeydown); @@ -424,6 +431,18 @@ export default { this.disabled = false this.loading.close() } + }, + closeCloud () { + this.cloudOff = !this.cloudOff + if (this.cloudOff) { + this.$nextTick(() => { + this.$refs.glMap.closeWebSocket() + }) + } else { + this.$nextTick(() => { + this.$refs.glMap.init() + }) + } } } } @@ -483,9 +502,21 @@ export default { color: #000 font-weight: 700 } +.car-info + max-width calc(100% - 3rem) + background: rgba(30, 95, 239, 60%); + padding: 0 10px; + border-radius: 8px; + margin-left: 10px; + font-size: 0.2rem; + line-height: 0.36rem; + color: #fff + overflow: hidden .enClass .button_control p font-size .18rem line-height .16rem + .car-info + font-size .16rem diff --git a/src/pages/modules/gl-map-3.vue b/src/pages/modules/gl-map-3.vue deleted file mode 100644 index 05d8705..0000000 --- a/src/pages/modules/gl-map-3.vue +++ /dev/null @@ -1,448 +0,0 @@ - - - - - diff --git a/src/pages/modules/gl-map-4.vue b/src/pages/modules/gl-map-4.vue index 1c8ff16..e7dfb89 100644 --- a/src/pages/modules/gl-map-4.vue +++ b/src/pages/modules/gl-map-4.vue @@ -66,8 +66,8 @@ export default { animationFrameId: null, // 优化相关参数 updateThrottle: 50, // 数据更新节流间隔(ms) - lastUpdateTime: 0, - resizeHandler: null // 存储resize事件处理函数 + lastUpdateTime: 0 + // resizeHandler: null // 存储resize事件处理函数 } }, computed: { @@ -84,6 +84,9 @@ export default { beforeDestroy() { this.cleanupResources(); }, + mounted () { + this.initThreeJS(); + }, methods: { cleanupResources() { if (this.reconnectTimer) clearTimeout(this.reconnectTimer) @@ -111,10 +114,10 @@ export default { this.scene.clear(); this.scene = null; } - if (this.resizeHandler) { - window.removeEventListener('resize', this.resizeHandler); - this.resizeHandler = null; - } + // if (this.resizeHandler) { + // window.removeEventListener('resize', this.resizeHandler); + // this.resizeHandler = null; + // } const canvas = this.$refs.pointCloudCanvas; if (canvas) { canvas.removeEventListener('touchstart', null); @@ -402,8 +405,8 @@ export default { }, setupEventListeners() { const canvas = this.$refs.pointCloudCanvas; - this.resizeHandler = () => this.updateRendererSize(); - window.addEventListener('resize', this.resizeHandler); + // this.resizeHandler = () => this.updateRendererSize(); + // window.addEventListener('resize', this.resizeHandler); // 触摸事件 - 平移 canvas.addEventListener('touchstart', (e) => { if (e.touches.length === 1) { @@ -564,7 +567,6 @@ export default { this.allPoints = [] }, init() { - this.initThreeJS(); this.initWebSocket() // this.isLoading = false; // const pointData = points.data