diff --git a/resources/views/rd/fire-shutter-drawing/index.blade.php b/resources/views/rd/fire-shutter-drawing/index.blade.php
index 4ce1f1af..5206d9a8 100644
--- a/resources/views/rd/fire-shutter-drawing/index.blade.php
+++ b/resources/views/rd/fire-shutter-drawing/index.blade.php
@@ -556,7 +556,7 @@ function renderSettingsPreview() {
- 셔터박스 (HEAD BOX)
+ 셔터박스 (CASE)
@@ -809,7 +809,7 @@ function renderSbFront() {
${b.height} mm
- HEAD BOX / CASE — t=${b.thickness}mm
+ 셔터박스 (CASE) — t=${b.thickness}mm
`;
displaySvg(svg);
@@ -1065,13 +1065,14 @@ function fs3dBuild() {
meshes.slats.position.set(0, H - shutterH / 2, 0);
scene.add(meshes.slats);
- // Slat lines (horizontal grooves for steel type)
+ // Slat lines (horizontal grooves for steel type) — local coords relative to meshes.slats
if (S.productType === 'steel') {
const lineGroup = new THREE.Group();
const slatPitch = 80; // mm
const lineCount = Math.floor(shutterH / slatPitch);
for (let i = 1; i < lineCount; i++) {
- const y = H - i * slatPitch;
+ const y = shutterH / 2 - i * slatPitch; // local Y: top of plane → down
+ if (y < -shutterH / 2) break;
const lineGeo = new THREE.BufferGeometry().setFromPoints([
new THREE.Vector3(-W/2 + 10, y, 1),
new THREE.Vector3(W/2 - 10, y, 1)