From fb4e1b021f71c7b2429aa3d8f8701c2111db0840 Mon Sep 17 00:00:00 2001
From: yuliang <398780299@qq.com>
Date: Tue, 24 Jun 2025 14:18:13 +0800
Subject: [PATCH 1/3] =?UTF-8?q?cl2=20=E6=8E=A5=E5=85=A5amr=E6=8C=87?=
=?UTF-8?q?=E4=BB=A4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/core/manager/EntityManager.ts | 15 +++++++++++++++
src/core/script/ModelManager.ts | 7 +++++++
src/modules/cl2/Cl23dObject.ts | 6 +++++-
src/modules/cl2/Cl2Entity.ts | 2 +-
src/types/ScriptSupport.d.ts | 7 +++++++
5 files changed, 35 insertions(+), 2 deletions(-)
diff --git a/src/core/manager/EntityManager.ts b/src/core/manager/EntityManager.ts
index 7fd4756..ba1e160 100644
--- a/src/core/manager/EntityManager.ts
+++ b/src/core/manager/EntityManager.ts
@@ -504,6 +504,21 @@ export default class EntityManager {
return this.___entityMap.get(linkStartPointId)
}
+ findItemByLogicXY(logicX: number, logicY: number): ItemJson | undefined {
+ if (logicX < 0 || logicY < 0) {
+ return
+ }
+ let item: ItemJson | undefined = undefined
+ this.___entityMap.forEach((value) => {
+ if (value.logicX === logicX && value.logicY === logicY) {
+ item = value
+ return
+ }
+ })
+ return item
+ }
+
+
getObjectByCanvasMouse(event: MouseEvent): Object3DLike[] {
const _domElement = this.viewport.renderer.domElement
const rect = _domElement.getBoundingClientRect()
diff --git a/src/core/script/ModelManager.ts b/src/core/script/ModelManager.ts
index 7581562..38662a6 100644
--- a/src/core/script/ModelManager.ts
+++ b/src/core/script/ModelManager.ts
@@ -81,6 +81,13 @@ export default class ModelManager implements IControls, Model {
matrix.decompose(position, new THREE.Quaternion(), new THREE.Vector3())
return position
}
+ getPositionByLogicXY(logicX: number, logicY: number): THREE.Vector3 {
+ const item = this.viewport.entityManager.findItemByLogicXY(logicX, logicY)
+ const matrix = getMatrixFromTf(item.tf)
+ const position = new THREE.Vector3()
+ matrix.decompose(position, new THREE.Quaternion(), new THREE.Vector3())
+ return position
+ }
dispose() {
this.viewport = null as any
diff --git a/src/modules/cl2/Cl23dObject.ts b/src/modules/cl2/Cl23dObject.ts
index 983aafc..5ef104f 100644
--- a/src/modules/cl2/Cl23dObject.ts
+++ b/src/modules/cl2/Cl23dObject.ts
@@ -516,8 +516,12 @@ export default class Cl23dObject extends THREE.Object3D {
if (data.id === 10010) {
const cl2: Cl2Entity = Model.getCl2("10") as Cl2Entity
cl2.addRobotTask(data)
- cl2.taskStartRun()
+ this.fn(cl2)
}
}
+ fn = _.debounce((cl2: Cl2Entity) => {
+ cl2.taskStartRun()
+ }, 2000)
+
}
diff --git a/src/modules/cl2/Cl2Entity.ts b/src/modules/cl2/Cl2Entity.ts
index 591c8a5..280ffe0 100644
--- a/src/modules/cl2/Cl2Entity.ts
+++ b/src/modules/cl2/Cl2Entity.ts
@@ -47,7 +47,7 @@ export default class Cl2Entity extends BaseEntity {
() => this.cl2Object.addRotation(moveDirection * Math.PI/2)
))
this.taskQueue.add(this.createTask('TRAVEL',
- () => this.cl2Object.addTravel(Model.getPositionByEntityId(link.id) ,Math.abs(link.Speed/1000))
+ () => this.cl2Object.addTravel(Model.getPositionByLogicXY(link.X, link.Y) ,Math.abs(link.Speed/1000))
))
startX = link.X
startY = link.Y
diff --git a/src/types/ScriptSupport.d.ts b/src/types/ScriptSupport.d.ts
index 1ef3628..e9639ab 100644
--- a/src/types/ScriptSupport.d.ts
+++ b/src/types/ScriptSupport.d.ts
@@ -1,3 +1,5 @@
+import * as THREE from "three";
+
/**
* 物流模型 API 接口
*/
@@ -14,6 +16,11 @@ declare interface Model {
getPositionByEntityId(entityId: string): Vector3IF
/**
+ * 根据逻辑坐标获取位置
+ */
+ getPositionByLogicXY(logicX: number, logicY: number): THREE.Vector3
+
+ /**
* 根据ID获取 CL2 叉车控制器
*/
getCl2(id: string): Cl2If
From 9a644cf6d96753438c75fb0cfc42b70e46ff350c Mon Sep 17 00:00:00 2001
From: lizw-2015 <1183409807@qq.com>
Date: Tue, 24 Jun 2025 17:47:45 +0800
Subject: [PATCH 2/3] =?UTF-8?q?feat(user):=20=E5=88=9B=E5=BB=BA=E7=94=A8?=
=?UTF-8?q?=E6=88=B7=E7=AE=A1=E7=90=86=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 添加用户管理页面的基本结构和样式
- 实现查询表单和数据表格的功能
- 添加新增和删除按钮
- 优化页面布局和样式
---
src/views/user/users.vue | 130 ++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 123 insertions(+), 7 deletions(-)
diff --git a/src/views/user/users.vue b/src/views/user/users.vue
index cea3ce3..599acae 100644
--- a/src/views/user/users.vue
+++ b/src/views/user/users.vue
@@ -1,12 +1,128 @@
+
+
-
- users
-
+
+
+ 查询
+ 新增
+ 删除
+
+
+
+
+
-
-
+
From 9c445d9b2aed981f47dc3060e8f952f6957a61cd Mon Sep 17 00:00:00 2001
From: lizw-2015 <1183409807@qq.com>
Date: Tue, 24 Jun 2025 17:50:42 +0800
Subject: [PATCH 3/3] =?UTF-8?q?feat(user):=20=E5=88=9B=E5=BB=BA=E8=A7=92?=
=?UTF-8?q?=E8=89=B2=E7=AE=A1=E7=90=86=E9=A1=B5=E9=9D=A2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 添加角色管理页面的基本结构和样式
- 实现查询表单和数据表格的功能
- 添加新增和删除按钮
- 优化页面布局和样式
---
src/views/user/roles.vue | 129 ++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 122 insertions(+), 7 deletions(-)
diff --git a/src/views/user/roles.vue b/src/views/user/roles.vue
index ce510db..f592f69 100644
--- a/src/views/user/roles.vue
+++ b/src/views/user/roles.vue
@@ -1,12 +1,127 @@
+
+
-
- roles
-
+
+
+ 查询
+ 新增
+ 删除
+
+
+
+
+
-
-
+