diff --git a/resources/views/rd/fire-shutter-drawing/index.blade.php b/resources/views/rd/fire-shutter-drawing/index.blade.php index 179bd709..e10f3f21 100644 --- a/resources/views/rd/fire-shutter-drawing/index.blade.php +++ b/resources/views/rd/fire-shutter-drawing/index.blade.php @@ -1220,62 +1220,83 @@ function renderSbSide() { const b = S.sb; const p = PRODUCTS[S.productType]; const D = b.depth, H = b.height; - const fH = p.sb.frontH; // 전면 높이 (screen:240, steel:410) + const fH = p.sb.frontH; // 전면 상부 높이 (screen:240, steel:410) + const bOpen = p.sb.bottomOpen || 75; // 슬랫 슬롯 높이 75mm + const lowerFH = Math.max(0, H - fH - bOpen); // 전면 하부 패널 (screen:65, steel:65) const sc = Math.min(480 / D, 520 / H); const pad = 80; - const sD = D*sc, sH = H*sc, sfH = fH*sc; - const svgW = sD + pad*2 + 150, svgH = sH + pad*2 + 100; + const sD = D*sc, sH = H*sc, sfH = fH*sc, sBOpen = bOpen*sc, sLFH = lowerFH*sc; + const svgW = sD + pad*2 + 150, svgH = sH + pad*2 + 70; const ox = pad + 65, oy = pad + 30; - const vt = Math.max(5, (b.thickness||1.6)*sc*3); // 판 두께 (표시용 확대) - const bpW = Math.min(fH, D-50)*sc; // 하판 폭 (≒ frontH, 절곡도 기준 240mm) - const railW = (S.productType==='screen' ? 70 : 120)*sc; - const railUp = 100*sc; - const shaftR = (b.shaftDia/2)*sc; - // 샤프트: 상판~하판 사이 공간 중앙에 배치 - const shaftCx = ox + sD*0.48; - const shaftCy = oy + sfH*0.5; - const rollR = shaftR + 20*sc; + const vt = Math.max(5, (b.thickness||1.6)*sc*3); const pf='#4b5563', ps='#6b7280', ff='#374151'; - // 절곡 치수 (절곡도 기준) + // 하판: fH 위치의 내부 선반 (절곡도 기준 240mm) + const shelfW = Math.min(fH, D-50)*sc; + // 바닥판: H 위치, 레일홀(70mm)만 제외하고 전체 커버 + const railHoleW = (S.productType==='screen' ? 70 : 120)*sc; + const backShelf = 50*sc; // 후면 하부 50mm 선반 + const railUp = 100*sc; + + // 샤프트: 상판~내부선반 사이 중앙 + const shaftR = (b.shaftDia/2)*sc; + const shaftCx = ox + sD*0.48; + const shaftCy = oy + sfH*0.45; + const rollR = shaftR + 20*sc; + + // 절곡 치수 const f20=20*sc, f50=50*sc, f55=55*sc, f15=15*sc, f13=13*sc, f17=17*sc; const svg = ` 셔터박스 측면 단면도 (Side Cross-Section) - - + + - - + + - + - + - - + + ${sLFH > 0 ? `` : ''} + + + + + + + - + - + - + - - - - - - + + + + - - - 레일 ${Math.round(railW/sc)} - ↑ 100mm 진입 + + + + + 레일 ${Math.round(railHoleW/sc)} + ↑ ${Math.round(railUp/sc)}mm + + + + + + + ↓ 슬랫 ${b.showShaft ? ` @@ -1294,38 +1315,31 @@ function renderSbSide() { M ` : ''} - - - ↓ 슬랫 - - 개방 - 깊이 ${D} mm - + ${H} mm - + ${fH} mm - - - - - 하판 ${Math.round(bpW/sc)} mm - - - - - ${Math.round(railW/sc)} mm + + + + ${bOpen} mm + + + + + 레일홀 ${Math.round(railHoleW/sc)} mm 벽측 (후면)