From d9f56db29e928cf8eaaea46d87240622c4cd4372 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Mon, 9 Mar 2026 08:12:08 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20[rd]=20=EB=B9=84=EB=AA=A8=ED=84=B0?= =?UTF-8?q?=EC=B8=A1=20=EB=B8=8C=EB=9D=BC=EC=BC=93=20=EB=8F=84=EB=A9=B4=20?= =?UTF-8?q?=EC=B9=98=EC=88=98=20=EC=A0=81=EC=9A=A9=20(180=C3=97180mm)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 비모터측: 180×180mm 두께 18mm (도면 기준) - 모터측: 380×180mm 두께 18mm (기존 유지) - 계산값(height*0.7, depth*0.6) → 실측 치수로 변경 --- .../rd/fire-shutter-drawing/index.blade.php | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/resources/views/rd/fire-shutter-drawing/index.blade.php b/resources/views/rd/fire-shutter-drawing/index.blade.php index 9f90beb6..008b85a4 100644 --- a/resources/views/rd/fire-shutter-drawing/index.blade.php +++ b/resources/views/rd/fire-shutter-drawing/index.blade.php @@ -1048,25 +1048,25 @@ function fs3dBuild() { const motorDir = b.motorSide === 'right' ? 1 : -1; const nonMotorSide = -motorDir; - // 비모터측 브라켓 (작은 브라켓) - const bkW = b.bracketW; // 두께 (X방향) - const bkH = b.height * 0.7; // 높이 (Y방향) - const bkD = b.depth * 0.6; // 깊이 (Z방향) + // 비모터측 브라켓 (도면: 180×180mm, 샤프트만 잡아줌) + const bkThick = 18; // 두께 (X방향, 철판) + const bkH = 180; // 높이 (Y방향) + const bkD = 180; // 깊이 (Z방향) - // 모터측 브라켓 (도면: 380×180mm, 체인/스프로켓 수용) - const motorBkW = 380; // 모터측 브라켓 폭 (X방향) - const motorBkH = 180; // 모터측 브라켓 높이 (Y방향) - const motorBkD = 18; // 모터측 브라켓 두께 (Z방향, 철판) + // 모터측 브라켓 (도면: 380×180mm, 체인/스프로켓/모터 수용) + const motorBkW = 380; // 깊이 (Z방향, 샤프트~모터 거리 수용) + const motorBkH = 180; // 높이 (Y방향) + const motorBkD = 18; // 두께 (X방향, 철판) const shaftFromInner = 90; // 브라켓 내면에서 샤프트 중심까지 거리 (도면 기준) // 주축: 양쪽 브라켓 외면까지 (돌출 없음) const mainShaftLen = W1; const msCenterX = 0; - // --- Non-motor side Bracket --- - const bkGeo = new THREE.BoxGeometry(bkW, bkH, bkD); + // --- Non-motor side Bracket (180×180mm, 두께 18mm) --- + const bkGeo = new THREE.BoxGeometry(bkThick, bkH, bkD); const bkMesh = new THREE.Mesh(bkGeo, bracketMat); - bkMesh.position.set(nonMotorSide * (W1 / 2 - bkW / 2), 0, 0); + bkMesh.position.set(nonMotorSide * (W1 / 2 - bkThick / 2), 0, 0); meshes.shaft.add(bkMesh); // --- Main Shaft (양쪽 브라켓 관통, 전체 폭) ---