From fbcabde49e8e061c7cd55e564dc4c3726fce6a5c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EB=B3=B4=EA=B3=A4?= Date: Sat, 14 Mar 2026 13:49:33 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20[fire-shutter]=20=EA=B0=80=EC=9D=B4?= =?UTF-8?q?=EB=93=9C=EB=A0=88=EC=9D=BC=20Z=EC=B6=95=20=EC=9C=84=EC=B9=98?= =?UTF-8?q?=EB=A5=BC=20=EB=B2=BD=EB=A9=B4=EC=97=90=20=EB=B0=80=EC=B0=A9?= =?UTF-8?q?=EB=90=98=EB=8F=84=EB=A1=9D=20=EC=88=98=EC=A0=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 스크린형 레일 전면을 벽면(Z=0)에 정렬 - 레일이 벽 뒤쪽으로 확장되도록 Z오프셋 변경 - 좌측: Z=-rw/2 → Z=-rw, 우측: Z=+rw/2 → Z=0 --- resources/views/rd/fire-shutter-drawing/index.blade.php | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/resources/views/rd/fire-shutter-drawing/index.blade.php b/resources/views/rd/fire-shutter-drawing/index.blade.php index 331edb4a..8e39c41d 100644 --- a/resources/views/rd/fire-shutter-drawing/index.blade.php +++ b/resources/views/rd/fire-shutter-drawing/index.blade.php @@ -2244,19 +2244,23 @@ function createRailGroup() { const railPosX = W1 / 2 - railDepth; // front face 위치 (중심에서) // Left rail — Ry(-PI/2): 개구부(립) → +X (중심), 백월 → -X (벽) + // Z방향: Ry(-PI/2)에서 z'=x(원본), 폭 0→70이 z' 0→70으로 매핑 + // 레일 전면을 벽면(Z=0)에 맞추기: wrapper Z = -rw → 레일 Z범위 -rw~0 const railGroupL = createRailGroup(); const wrapperL = new THREE.Group(); wrapperL.add(railGroupL); wrapperL.rotation.y = -Math.PI / 2; - wrapperL.position.set(-railPosX, 0, -rw / 2); + wrapperL.position.set(-railPosX, 0, -rw); meshes.rails.add(wrapperL); // Right rail — Ry(+PI/2): 개구부(립) → -X (중심), 백월 → +X (벽) + // Z방향: Ry(+PI/2)에서 z'=-x(원본), 폭 0→70이 z' 0→-70으로 매핑 + // 레일 전면을 벽면(Z=0)에 맞추기: wrapper Z = 0 → 레일 Z범위 0~-rw const railGroupR = createRailGroup(); const wrapperR = new THREE.Group(); wrapperR.add(railGroupR); wrapperR.rotation.y = Math.PI / 2; - wrapperR.position.set(railPosX, 0, rw / 2); + wrapperR.position.set(railPosX, 0, 0); meshes.rails.add(wrapperR); } else { // ====== 철재형: 기존 C채널 방식 (슬랫이 Z방향 슬롯 통과) ======