From 30d6d8eecdd6db672602600684c5e0ae7b186635 Mon Sep 17 00:00:00 2001 From: yuliang <398780299@qq.com> Date: Wed, 11 Jun 2025 15:54:55 +0800 Subject: [PATCH] asd --- src/assets/Models/storageBar.png | Bin 0 -> 1830 bytes src/assets/Models/storageBar2.png | Bin 0 -> 3521 bytes src/components/Model3DView.vue | 159 ++++++++++++++++++++++++++++++++++++++ src/editor/menus/Model3DView.ts | 2 +- src/modules/rack/RackRenderer.ts | 12 +++ 5 files changed, 172 insertions(+), 1 deletion(-) create mode 100644 src/assets/Models/storageBar.png create mode 100644 src/assets/Models/storageBar2.png diff --git a/src/assets/Models/storageBar.png b/src/assets/Models/storageBar.png new file mode 100644 index 0000000000000000000000000000000000000000..535a2d615c8b370934156b681ba840eab207c6ac GIT binary patch literal 1830 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 ny && nx >= nz) { + x = pos.getZ(i); + y = pos.getY(i); + } + + // if facing Y + if (ny >= nx && ny >= nz) { + x = pos.getX(i); + y = pos.getZ(i); + } + + // if facing Z + if (nz >= nx && nz >= ny) { + x = pos.getX(i); + y = pos.getY(i); + } + + uvs.setXY(i, x, y); + } } function initThree() { diff --git a/src/editor/menus/Model3DView.ts b/src/editor/menus/Model3DView.ts index 7896b5a..e943900 100644 --- a/src/editor/menus/Model3DView.ts +++ b/src/editor/menus/Model3DView.ts @@ -15,7 +15,7 @@ export default defineMenu((menus) => { system.showDialog(Model3DView, { title: '模型查看器', width: 950, - height: 400, + height: 950, showClose: true, showMax: true, showCancelButton: false, diff --git a/src/modules/rack/RackRenderer.ts b/src/modules/rack/RackRenderer.ts index 4698559..5c67106 100644 --- a/src/modules/rack/RackRenderer.ts +++ b/src/modules/rack/RackRenderer.ts @@ -5,6 +5,8 @@ import { LineGeometry } from 'three/examples/jsm/lines/LineGeometry.js' import { LineMaterial } from 'three/examples/jsm/lines/LineMaterial.js' import { decimalSumBy } from '@/core/ModelUtils' import Constract from '@/core/Constract.ts' +import Plastic_Rough_JPG from '@/assets/Models/Plastic_Rough.jpg' +import {BufferGeometry} from "three"; /** * 货架货位渲染器 @@ -137,4 +139,14 @@ export default class RackRenderer extends BaseRenderer { createPointBasic(item: ItemJson, option?: RendererCudOption): THREE.Object3D { throw new Error('Rack createPointBasic not allow!') } + + rackVerticalBarWidth = 0.1 + rackVerticalBarDepth = 0.08 + rackVerticalBarColor = 0xFF35499C + rackVerticalBarGeometry: BufferGeometry = null + + createVerticalBar(x, y, z, length) { + + } + }