diff --git a/package.json b/package.json index 3a3b434..8c592c0 100644 --- a/package.json +++ b/package.json @@ -1,61 +1,63 @@ -{ - "name": "CMVR-IOT-UI", - "version": "3.8.8", - "description": "CMVR-IOT平台管理系统前端UI框架", - "author": "CMVR", - "license": "MIT", - "type": "module", - "scripts": { - "dev": "vite", - "build:dev": "vite build --mode development", - "build:prod": "vite build --mode production", - "build:test": "vite build --mode test", - "preview": "vite preview" - }, - "dependencies": { - "@element-plus/icons-vue": "2.3.1", - "@logicflow/core": "^2.0.13", - "@logicflow/extension": "^2.0.18", - "@vueup/vue-quill": "1.2.0", - "@vueuse/core": "10.11.0", - "ace-builds": "^1.43.0", - "axios": "0.28.1", - "clipboard": "2.0.11", - "dayjs": "^1.11.13", - "echarts": "5.5.1", - "element-plus": "2.9.4", - "file-saver": "2.0.5", - "fuse.js": "6.6.2", - "js-beautify": "1.14.11", - "js-cookie": "3.0.5", - "jsencrypt": "3.3.2", - "json-editor-vue": "^0.18.1", - "lodash": "^4.17.21", - "mitt": "^3.0.1", - "nprogress": "0.2.0", - "pako": "^2.1.0", - "pinia": "2.1.7", - "pnpm": "^10.23.0", - "socket.io-client": "^4.8.1", - "sockjs-client": "^1.6.1", - "splitpanes": "3.1.5", - "uuid": "^11.1.0", - "vue": "3.4.31", - "vue-cropper": "1.1.1", - "vue-router": "4.4.0", - "vue3-ace-editor": "^2.2.4", - "vue3-json-viewer": "2.3.0", - "vuedraggable": "4.1.0", - "xgplayer": "^3.0.22" - }, - "devDependencies": { - "@vitejs/plugin-vue": "5.0.5", - "file-loader": "^6.2.0", - "sass": "1.77.5", - "unplugin-auto-import": "0.17.6", - "unplugin-vue-setup-extend-plus": "1.0.1", - "vite": "5.3.2", - "vite-plugin-compression": "0.5.1", - "vite-plugin-svg-icons": "2.0.1" - } -} +{ + "name": "CMVR-IOT-UI", + "version": "3.8.8", + "description": "CMVR-IOT平台管理系统前端UI框架", + "author": "CMVR", + "license": "MIT", + "type": "module", + "scripts": { + "dev": "vite", + "build:dev": "vite build --mode development", + "build:prod": "vite build --mode production", + "build:test": "vite build --mode test", + "preview": "vite preview" + }, + "dependencies": { + "@element-plus/icons-vue": "2.3.1", + "@logicflow/core": "^2.0.13", + "@logicflow/extension": "^2.0.18", + "@vueup/vue-quill": "1.2.0", + "@vueuse/core": "10.11.0", + "ace-builds": "^1.43.0", + "axios": "0.28.1", + "clipboard": "2.0.11", + "dayjs": "^1.11.13", + "echarts": "5.5.1", + "element-plus": "2.9.4", + "file-saver": "2.0.5", + "fuse.js": "6.6.2", + "js-beautify": "1.14.11", + "js-cookie": "3.0.5", + "jsencrypt": "3.3.2", + "json-editor-vue": "^0.18.1", + "lodash": "^4.17.21", + "mitt": "^3.0.1", + "nprogress": "0.2.0", + "pako": "^2.1.0", + "pinia": "2.1.7", + "pnpm": "^10.23.0", + "socket.io-client": "^4.8.1", + "sockjs-client": "^1.6.1", + "splitpanes": "3.1.5", + "three": "^0.181.2", + "urdf-loader": "^0.12.6", + "uuid": "^11.1.0", + "vue": "3.4.31", + "vue-cropper": "1.1.1", + "vue-router": "4.4.0", + "vue3-ace-editor": "^2.2.4", + "vue3-json-viewer": "2.3.0", + "vuedraggable": "4.1.0", + "xgplayer": "^3.0.22" + }, + "devDependencies": { + "@vitejs/plugin-vue": "5.0.5", + "file-loader": "^6.2.0", + "sass": "1.77.5", + "unplugin-auto-import": "0.17.6", + "unplugin-vue-setup-extend-plus": "1.0.1", + "vite": "5.3.2", + "vite-plugin-compression": "0.5.1", + "vite-plugin-svg-icons": "2.0.1" + } +} diff --git a/public/models/dual_arm.urdf b/public/models/dual_arm.urdf new file mode 100644 index 0000000..045c4ad --- /dev/null +++ b/public/models/dual_arm.urdf @@ -0,0 +1,660 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/models/left_arm.urdf b/public/models/left_arm.urdf new file mode 100644 index 0000000..d62639e --- /dev/null +++ b/public/models/left_arm.urdf @@ -0,0 +1,281 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/public/models/meshes/L_ELBOW_R_S.STL b/public/models/meshes/L_ELBOW_R_S.STL new file mode 100644 index 0000000..17e4796 Binary files /dev/null and b/public/models/meshes/L_ELBOW_R_S.STL differ diff --git a/public/models/meshes/L_SHOULDER_P_S.STL b/public/models/meshes/L_SHOULDER_P_S.STL new file mode 100644 index 0000000..855e54e Binary files /dev/null and b/public/models/meshes/L_SHOULDER_P_S.STL differ diff --git a/public/models/meshes/L_SHOULDER_R_S.STL b/public/models/meshes/L_SHOULDER_R_S.STL new file mode 100644 index 0000000..1652ea7 Binary files /dev/null and b/public/models/meshes/L_SHOULDER_R_S.STL differ diff --git a/public/models/meshes/L_SHOULDER_Y_S.STL b/public/models/meshes/L_SHOULDER_Y_S.STL new file mode 100644 index 0000000..a966726 Binary files /dev/null and b/public/models/meshes/L_SHOULDER_Y_S.STL differ diff --git a/public/models/meshes/L_WRIST_P_S.STL b/public/models/meshes/L_WRIST_P_S.STL new file mode 100644 index 0000000..10e6156 Binary files /dev/null and b/public/models/meshes/L_WRIST_P_S.STL differ diff --git a/public/models/meshes/L_WRIST_R_S.STL b/public/models/meshes/L_WRIST_R_S.STL new file mode 100644 index 0000000..4255742 Binary files /dev/null and b/public/models/meshes/L_WRIST_R_S.STL differ diff --git a/public/models/meshes/L_WRIST_Y_S.STL b/public/models/meshes/L_WRIST_Y_S.STL new file mode 100644 index 0000000..ae6a7f9 Binary files /dev/null and b/public/models/meshes/L_WRIST_Y_S.STL differ diff --git a/public/models/meshes/NECK_P_S.STL b/public/models/meshes/NECK_P_S.STL new file mode 100644 index 0000000..b294c7f Binary files /dev/null and b/public/models/meshes/NECK_P_S.STL differ diff --git a/public/models/meshes/NECK_R_S.STL b/public/models/meshes/NECK_R_S.STL new file mode 100644 index 0000000..f9e097e Binary files /dev/null and b/public/models/meshes/NECK_R_S.STL differ diff --git a/public/models/meshes/NECK_Y_S.STL b/public/models/meshes/NECK_Y_S.STL new file mode 100644 index 0000000..f1e1b9b Binary files /dev/null and b/public/models/meshes/NECK_Y_S.STL differ diff --git a/public/models/meshes/PELVIS_S.STL b/public/models/meshes/PELVIS_S.STL new file mode 100644 index 0000000..133cf46 Binary files /dev/null and b/public/models/meshes/PELVIS_S.STL differ diff --git a/public/models/meshes/R_ELBOW_R_S.STL b/public/models/meshes/R_ELBOW_R_S.STL new file mode 100644 index 0000000..2fb7b53 Binary files /dev/null and b/public/models/meshes/R_ELBOW_R_S.STL differ diff --git a/public/models/meshes/R_SHOULDER_P_S.STL b/public/models/meshes/R_SHOULDER_P_S.STL new file mode 100644 index 0000000..8bfafb1 Binary files /dev/null and b/public/models/meshes/R_SHOULDER_P_S.STL differ diff --git a/public/models/meshes/R_SHOULDER_R_S.STL b/public/models/meshes/R_SHOULDER_R_S.STL new file mode 100644 index 0000000..b14ad9b Binary files /dev/null and b/public/models/meshes/R_SHOULDER_R_S.STL differ diff --git a/public/models/meshes/R_SHOULDER_Y_S.STL b/public/models/meshes/R_SHOULDER_Y_S.STL new file mode 100644 index 0000000..aea9b41 Binary files /dev/null and b/public/models/meshes/R_SHOULDER_Y_S.STL differ diff --git a/public/models/meshes/R_WRIST_P_S.STL b/public/models/meshes/R_WRIST_P_S.STL new file mode 100644 index 0000000..b48aa44 Binary files /dev/null and b/public/models/meshes/R_WRIST_P_S.STL differ diff --git a/public/models/meshes/R_WRIST_R_S.STL b/public/models/meshes/R_WRIST_R_S.STL new file mode 100644 index 0000000..70a997d Binary files /dev/null and b/public/models/meshes/R_WRIST_R_S.STL differ diff --git a/public/models/meshes/R_WRIST_Y_S.STL b/public/models/meshes/R_WRIST_Y_S.STL new file mode 100644 index 0000000..ef15308 Binary files /dev/null and b/public/models/meshes/R_WRIST_Y_S.STL differ diff --git a/public/models/meshes/base_link.STL b/public/models/meshes/base_link.STL new file mode 100644 index 0000000..f7dae5c Binary files /dev/null and b/public/models/meshes/base_link.STL differ diff --git a/public/models/meshes/index_force_sensor_1.STL b/public/models/meshes/index_force_sensor_1.STL new file mode 100644 index 0000000..b271a2a Binary files /dev/null and b/public/models/meshes/index_force_sensor_1.STL differ diff --git a/public/models/meshes/index_force_sensor_2.STL b/public/models/meshes/index_force_sensor_2.STL new file mode 100644 index 0000000..f056699 Binary files /dev/null and b/public/models/meshes/index_force_sensor_2.STL differ diff --git a/public/models/meshes/index_force_sensor_3.STL b/public/models/meshes/index_force_sensor_3.STL new file mode 100644 index 0000000..7bf3a71 Binary files /dev/null and b/public/models/meshes/index_force_sensor_3.STL differ diff --git a/public/models/meshes/little_force_sensor_1.STL b/public/models/meshes/little_force_sensor_1.STL new file mode 100644 index 0000000..c4bffaf Binary files /dev/null and b/public/models/meshes/little_force_sensor_1.STL differ diff --git a/public/models/meshes/little_force_sensor_2.STL b/public/models/meshes/little_force_sensor_2.STL new file mode 100644 index 0000000..c1d599d Binary files /dev/null and b/public/models/meshes/little_force_sensor_2.STL differ diff --git a/public/models/meshes/little_force_sensor_3.STL b/public/models/meshes/little_force_sensor_3.STL new file mode 100644 index 0000000..f5d06b4 Binary files /dev/null and b/public/models/meshes/little_force_sensor_3.STL differ diff --git a/public/models/meshes/middle_force_sensor_1.STL b/public/models/meshes/middle_force_sensor_1.STL new file mode 100644 index 0000000..d42d830 Binary files /dev/null and b/public/models/meshes/middle_force_sensor_1.STL differ diff --git a/public/models/meshes/middle_force_sensor_2.STL b/public/models/meshes/middle_force_sensor_2.STL new file mode 100644 index 0000000..2feead5 Binary files /dev/null and b/public/models/meshes/middle_force_sensor_2.STL differ diff --git a/public/models/meshes/middle_force_sensor_3.STL b/public/models/meshes/middle_force_sensor_3.STL new file mode 100644 index 0000000..bb35da1 Binary files /dev/null and b/public/models/meshes/middle_force_sensor_3.STL differ diff --git a/public/models/meshes/palm_force_sensor.STL b/public/models/meshes/palm_force_sensor.STL new file mode 100644 index 0000000..60824bf Binary files /dev/null and b/public/models/meshes/palm_force_sensor.STL differ diff --git a/public/models/meshes/right_index_1.STL b/public/models/meshes/right_index_1.STL new file mode 100644 index 0000000..c17ff30 Binary files /dev/null and b/public/models/meshes/right_index_1.STL differ diff --git a/public/models/meshes/right_index_2.STL b/public/models/meshes/right_index_2.STL new file mode 100644 index 0000000..3f5e462 Binary files /dev/null and b/public/models/meshes/right_index_2.STL differ diff --git a/public/models/meshes/right_little_1.STL b/public/models/meshes/right_little_1.STL new file mode 100644 index 0000000..cc79788 Binary files /dev/null and b/public/models/meshes/right_little_1.STL differ diff --git a/public/models/meshes/right_little_2.STL b/public/models/meshes/right_little_2.STL new file mode 100644 index 0000000..c42f6d7 Binary files /dev/null and b/public/models/meshes/right_little_2.STL differ diff --git a/public/models/meshes/right_middle_1.STL b/public/models/meshes/right_middle_1.STL new file mode 100644 index 0000000..a6942b7 Binary files /dev/null and b/public/models/meshes/right_middle_1.STL differ diff --git a/public/models/meshes/right_middle_2.STL b/public/models/meshes/right_middle_2.STL new file mode 100644 index 0000000..0f3865f Binary files /dev/null and b/public/models/meshes/right_middle_2.STL differ diff --git a/public/models/meshes/right_ring_1.STL b/public/models/meshes/right_ring_1.STL new file mode 100644 index 0000000..6fc79ca Binary files /dev/null and b/public/models/meshes/right_ring_1.STL differ diff --git a/public/models/meshes/right_ring_2.STL b/public/models/meshes/right_ring_2.STL new file mode 100644 index 0000000..a4cf458 Binary files /dev/null and b/public/models/meshes/right_ring_2.STL differ diff --git a/public/models/meshes/right_thumb_1.STL b/public/models/meshes/right_thumb_1.STL new file mode 100644 index 0000000..a4f441c Binary files /dev/null and b/public/models/meshes/right_thumb_1.STL differ diff --git a/public/models/meshes/right_thumb_2.STL b/public/models/meshes/right_thumb_2.STL new file mode 100644 index 0000000..0b29f9b Binary files /dev/null and b/public/models/meshes/right_thumb_2.STL differ diff --git a/public/models/meshes/right_thumb_3.STL b/public/models/meshes/right_thumb_3.STL new file mode 100644 index 0000000..cf5cab1 Binary files /dev/null and b/public/models/meshes/right_thumb_3.STL differ diff --git a/public/models/meshes/right_thumb_4.STL b/public/models/meshes/right_thumb_4.STL new file mode 100644 index 0000000..bf147e0 Binary files /dev/null and b/public/models/meshes/right_thumb_4.STL differ diff --git a/public/models/meshes/ring_force_sensor_1.STL b/public/models/meshes/ring_force_sensor_1.STL new file mode 100644 index 0000000..40d42a1 Binary files /dev/null and b/public/models/meshes/ring_force_sensor_1.STL differ diff --git a/public/models/meshes/ring_force_sensor_2.STL b/public/models/meshes/ring_force_sensor_2.STL new file mode 100644 index 0000000..0e9e95b Binary files /dev/null and b/public/models/meshes/ring_force_sensor_2.STL differ diff --git a/public/models/meshes/ring_force_sensor_3.STL b/public/models/meshes/ring_force_sensor_3.STL new file mode 100644 index 0000000..32c799b Binary files /dev/null and b/public/models/meshes/ring_force_sensor_3.STL differ diff --git a/public/models/meshes/thumb_force_sensor_1.STL b/public/models/meshes/thumb_force_sensor_1.STL new file mode 100644 index 0000000..9993ba8 Binary files /dev/null and b/public/models/meshes/thumb_force_sensor_1.STL differ diff --git a/public/models/meshes/thumb_force_sensor_2.STL b/public/models/meshes/thumb_force_sensor_2.STL new file mode 100644 index 0000000..ee1fe22 Binary files /dev/null and b/public/models/meshes/thumb_force_sensor_2.STL differ diff --git a/public/models/meshes/thumb_force_sensor_3.STL b/public/models/meshes/thumb_force_sensor_3.STL new file mode 100644 index 0000000..57f9055 Binary files /dev/null and b/public/models/meshes/thumb_force_sensor_3.STL differ diff --git a/public/models/meshes/thumb_force_sensor_4.STL b/public/models/meshes/thumb_force_sensor_4.STL new file mode 100644 index 0000000..1842e2e Binary files /dev/null and b/public/models/meshes/thumb_force_sensor_4.STL differ diff --git a/public/models/right_arm.urdf b/public/models/right_arm.urdf new file mode 100644 index 0000000..b270c08 --- /dev/null +++ b/public/models/right_arm.urdf @@ -0,0 +1,322 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/views/device/register/components/MechanicalArm/components/JointControl.vue b/src/views/device/register/components/MechanicalArm/components/JointControl.vue new file mode 100644 index 0000000..f53b595 --- /dev/null +++ b/src/views/device/register/components/MechanicalArm/components/JointControl.vue @@ -0,0 +1,133 @@ + + + \ No newline at end of file diff --git a/src/views/device/register/components/MechanicalArm/components/UrdfViewer.vue b/src/views/device/register/components/MechanicalArm/components/UrdfViewer.vue new file mode 100644 index 0000000..836c781 --- /dev/null +++ b/src/views/device/register/components/MechanicalArm/components/UrdfViewer.vue @@ -0,0 +1,394 @@ + + + + + \ No newline at end of file diff --git a/src/views/device/register/components/MechanicalArm/index copy.vue b/src/views/device/register/components/MechanicalArm/index copy.vue deleted file mode 100644 index 8be19e1..0000000 --- a/src/views/device/register/components/MechanicalArm/index copy.vue +++ /dev/null @@ -1,565 +0,0 @@ - - - - - diff --git a/src/views/device/register/components/MechanicalArm/index.vue b/src/views/device/register/components/MechanicalArm/index.vue index f0acf05..558f317 100644 --- a/src/views/device/register/components/MechanicalArm/index.vue +++ b/src/views/device/register/components/MechanicalArm/index.vue @@ -1,28 +1,10 @@ @@ -341,97 +252,99 @@ const handleResets = (type) => { } .bottom { - flex: 1; - gap: 20px; - - .title { - font-size: 16px; - font-weight: bold; - margin-bottom: 10px; - user-select: none; - } + height: calc(100% - 120px); + display: flex; + gap: 12px; .left { - display: flex; - flex-direction: column; - position: relative; - - .coordinate-system { - flex: 1; - display: flex; - justify-content: center; - align-items: center; - position: relative; - background-color: #FFF; - background-image: url('@/assets/images/arm.png'); - background-size: contain; - background-position: center; - background-repeat: no-repeat; - - .control-buttons { - position: absolute; - width: 100%; - height: 100%; - top: 0; - left: 0; - - .pos-btn { - position: absolute; - width: 40px; - height: 40px; - background: #4076ff; - color: white; - border: none; - cursor: pointer; - font-size: 16px; - border-radius: 4px; - display: flex; - align-items: center; - justify-content: center; - transform: translate(-50%, -50%); /* 按钮中心对齐坐标 */ - } - } - } + flex: 2; + height: 100%; } .right { - .input-list { - display: flex; - flex-direction: column; - gap: 10px; + flex: 1; + height: 100%; + display: flex; + flex-direction: column; - .input-item { + .top { + flex: 1; + border: 1px solid #e4e7ed; + padding: 0 8px; + overflow: hidden; + + .container-title { + font-size: 16px; + text-align: center; + } + + .secondary-title { display: flex; - align-items: center; - justify-content: space-between; + justify-content: space-around; + padding: 10px; + margin-bottom: 10px; + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); + } - span { - width: 80px; - user-select: none; - } - - .el-input-number { - width: calc(100% - 90px); - } + .jointControl-container { + display: flex; + gap: 10px; + height: calc(100% - 75px); + overflow: auto; } } - } - } - .footer { - height: 50px; + .bottom { + flex: 1; - .time { - font-size: 14px; - } + .card { + border: 1px solid #e4e7ed; + border-radius: 8px; + padding: 10px; + margin-bottom: 10px; + height: 100%; + display: flex; + flex-direction: column; - .speed { - gap: 10px; + .coordinate-system { + flex: 1; + display: flex; + justify-content: center; + align-items: center; + position: relative; + background-color: #fff; + background-image: url("@/assets/images/arm.png"); + background-size: contain; + background-position: center; + background-repeat: no-repeat; - span { - user-select: none; + .control-buttons { + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + + .pos-btn { + position: absolute; + width: 40px; + height: 40px; + background: #4076ff; + color: white; + border: none; + cursor: pointer; + font-size: 16px; + border-radius: 4px; + display: flex; + align-items: center; + justify-content: center; + transform: translate(-50%, -50%); /* 按钮中心对齐坐标 */ + } + } + } + } } } } } - \ No newline at end of file +