fix: [rd] 방화셔터 가이드레일 높이 계산 수정 (오픈H + 150mm)

- 기존: 표준 재고길이(3305mm) 선택 방식 → 오픈H + 305mm 표시
- 수정: 오픈H + 150mm 계산 (실제 가이드레일 높이)
- 3D 렌더링 레일 높이도 +100 → +150 수정
This commit is contained in:
김보곤
2026-03-10 01:28:07 +09:00
parent 4c2a905a94
commit 85d52c9bc0

View File

@@ -84,7 +84,7 @@
<span>면적: <b id="calcArea" class="text-white">7.07</b></span>
<span>중량: <b id="calcWeight" class="text-white">176.7</b>kg</span>
<span>모터: <b id="calcMotor" class="text-blue-400">300K</b></span>
<span>레일: <b id="calcRailCombo" class="text-amber-400">3,305mm×2</b></span>
<span>레일: <b id="calcRailCombo" class="text-amber-400">3,150mm × 2</b></span>
</div>
<button onclick="var d=document.getElementById('settingsDetail');d.classList.toggle('hidden');this.querySelector('span').textContent=d.classList.contains('hidden')?'▼':'▲';" class="text-[11px] text-slate-500 hover:text-slate-300 font-bold px-2 py-1 rounded hover:bg-slate-800 transition-colors shrink-0">
<span></span>
@@ -487,13 +487,9 @@
const weight = area * p.weightFactor;
const motor = MOTORS.find(m => weight <= m.max) || MOTORS[MOTORS.length-1];
// Guide rail combo
let bestCombo = '';
const h = S.openHeight;
for (const r of RAIL_LENGTHS) {
if (r >= h) { bestCombo = `${r.toLocaleString()}mm × 2`; break; }
}
if (!bestCombo) bestCombo = `${RAIL_LENGTHS[RAIL_LENGTHS.length-1].toLocaleString()}mm × 2 (절단 조합)`;
// Guide rail height = 오픈H + 150mm (바닥~셔터박스 하단 결합부)
const guideRailH = S.openHeight + 150;
const bestCombo = `${guideRailH.toLocaleString()}mm × 2`;
$('calcW1').textContent = W1.toLocaleString();
$('calcH1').textContent = H1.toLocaleString();
@@ -1642,7 +1638,7 @@ function addPlate(w, h, d, x, y, z) {
// === GUIDE RAILS (ExtrudeGeometry) ===
const rw = g.width, rd = g.depth, rt = g.thickness;
const railHeight = H + 100; // 바닥(0)부터 셔터박스 밑면 +100mm까지 관통
const railHeight = H + 150; // 바닥(0)부터 셔터박스 하단 결합부 (+150mm)
const railExtrude = { depth: railHeight > 0 ? railHeight : H, bevelEnabled: false };
const railMat = new THREE.MeshStandardMaterial({ color: 0x64748b, metalness: 0.5, roughness: 0.4 });
const railSusMat = new THREE.MeshStandardMaterial({ color: 0x9ca3af, metalness: 0.7, roughness: 0.25 });