feat: [fire-shutter] 밑면 점검구 절곡판 프로파일 적용

- 기존 단순 rect+스크류탭 → 5세그먼트 절곡판 프로파일
- 17mm 플랜지─13mm 스텝─본체─13mm 스텝─17mm 플랜지
- 양쪽 플랜지가 리시빙 구조물 위에 올라가는 트레이 형태
- 린텔과 결합되는 구조 표현
This commit is contained in:
김보곤
2026-03-15 12:55:30 +09:00
parent 63140fa5b0
commit 2fcb7438e1

View File

@@ -1351,24 +1351,24 @@ function renderSbSide() {
<text x="${ox+sD+vt+4}" y="${oy+srTopH+srDoorH/2-4}" fill="${doorStroke}" font-size="9" font-weight="700" text-anchor="start" font-family="Pretendard">후면</text>
<text x="${ox+sD+vt+4}" y="${oy+srTopH+srDoorH/2+8}" fill="${doorStroke}" font-size="8" text-anchor="start" font-family="Pretendard" opacity="0.7">점검구</text>
<!-- ⑧ 밑면 점검구 (${bDoorW}mm) -->
<rect x="${ox+sbFrontW}" y="${oy+sH-vt}" width="${sbDoorW}" height="${vt}" fill="${doorFill}" stroke="${doorStroke}" stroke-width="1.5" stroke-dasharray="6 3"/>
<!-- 밑면 점검구 13mm 스크류 탭 -->
<rect x="${ox+sbFrontW}" y="${oy+sH-vt-f13}" width="${vt*0.5}" height="${f13}" fill="${doorFill}" stroke="${doorStroke}" stroke-width="0.8" stroke-dasharray="3 2" rx="1"/>
<rect x="${ox+sbFrontW+sbDoorW-vt*0.5}" y="${oy+sH-vt-f13}" width="${vt*0.5}" height="${f13}" fill="${doorFill}" stroke="${doorStroke}" stroke-width="0.8" stroke-dasharray="3 2" rx="1"/>
<!-- 밑면 접합부 직결피스 (나사 단면 표시) -->
<!-- ⑧ 밑면 점검구 절곡판 (5세그먼트: 17,13,main,13,17) -->
${(() => {
const y = oy+sH-vt/2;
const lx = ox+sbFrontW+vt*0.25, rx = ox+sbFrontW+sbDoorW-vt*0.25;
const r = Math.max(2.5, vt*0.25);
const screwCol = '#dc2626';
// 트레이 형태: 17mm 플랜지─13mm 스텝─본체─13mm 스텝─17mm 플랜지
const dx = ox + sbFrontW; // 점검구 좌측 가장자리
const dy = oy + sH; // 밑면 레벨
const dw = sbDoorW; // 점검구 폭
const df17 = f17, df13 = f13; // 플랜지 17mm, 스텝 13mm
return `
<circle cx="${lx}" cy="${y}" r="${r}" fill="${screwCol}" stroke="#991b1b" stroke-width="0.8"/>
<line x1="${lx-r*0.6}" y1="${y-r*0.6}" x2="${lx+r*0.6}" y2="${y+r*0.6}" stroke="white" stroke-width="0.8"/>
<line x1="${lx+r*0.6}" y1="${y-r*0.6}" x2="${lx-r*0.6}" y2="${y+r*0.6}" stroke="white" stroke-width="0.8"/>
<circle cx="${rx}" cy="${y}" r="${r}" fill="${screwCol}" stroke="#991b1b" stroke-width="0.8"/>
<line x1="${rx-r*0.6}" y1="${y-r*0.6}" x2="${rx+r*0.6}" y2="${y+r*0.6}" stroke="white" stroke-width="0.8"/>
<line x1="${rx+r*0.6}" y1="${y-r*0.6}" x2="${rx-r*0.6}" y2="${y+r*0.6}" stroke="white" stroke-width="0.8"/>
<!-- 본체 (main span, 밑면 레벨) -->
<rect x="${dx}" y="${dy-vt}" width="${dw}" height="${vt}" fill="${doorFill}" stroke="${doorStroke}" stroke-width="1.5" stroke-dasharray="6 3"/>
<!-- 좌측 스텝 (13mm , 본체 좌측 끝에서 상향) -->
<rect x="${dx}" y="${dy-vt-df13}" width="${vt*0.7}" height="${df13}" fill="${doorFill}" stroke="${doorStroke}" stroke-width="1" stroke-dasharray="4 2"/>
<!-- 좌측 플랜지 (17mm , 스텝 상단에서 좌측으로) -->
<rect x="${dx-df17}" y="${dy-vt-df13}" width="${df17+vt*0.3}" height="${vt*0.7}" fill="${doorFill}" stroke="${doorStroke}" stroke-width="1" stroke-dasharray="4 2"/>
<!-- 우측 스텝 (13mm , 본체 우측 끝에서 상향) -->
<rect x="${dx+dw-vt*0.7}" y="${dy-vt-df13}" width="${vt*0.7}" height="${df13}" fill="${doorFill}" stroke="${doorStroke}" stroke-width="1" stroke-dasharray="4 2"/>
<!-- 우측 플랜지 (17mm , 스텝 상단에서 우측으로) -->
<rect x="${dx+dw-vt*0.3}" y="${dy-vt-df13}" width="${df17+vt*0.3}" height="${vt*0.7}" fill="${doorFill}" stroke="${doorStroke}" stroke-width="1" stroke-dasharray="4 2"/>
`;
})()}
<!-- 밑면 점검구 라벨 -->