fix: [fire-shutter] ① 마감재 코킹립 방향 벽쪽 복원 + 벽 겹침 방지 위치 이동
This commit is contained in:
@@ -768,8 +768,8 @@ function renderGrCross() {
|
||||
// 립 끝
|
||||
const lipEndX = swEndX + bLip;
|
||||
|
||||
// ① 마감재 수평면 범위 (벽 내면 ~ C채널 립 끝)
|
||||
const trimL1 = pad + wallW + 2; // 수평면 좌측 끝 (벽 내면 근처)
|
||||
// ① 마감재 수평면 범위 (코킹립 끝 = 벽 내면, 측면탭 = 벽 내면 + 코킹립10mm)
|
||||
const trimL1 = pad + wallW + m1a + 2; // 측면탭 X (코킹립이 벽 내면까지만 도달)
|
||||
const trimR1 = lipEndX; // 수평면 우측 끝 (C채널 립 끝에 맞춤)
|
||||
|
||||
const by = pad; // 본체 상단 Y
|
||||
@@ -855,9 +855,9 @@ function renderGrCross() {
|
||||
|
||||
const trim1Svg = [
|
||||
// ══════ 상단 ① 마감재 (② 상면 바깥을 감싸기) ══════
|
||||
// 코킹립: 측면탭 하단에서 채널 내부(우측) 방향 수평 10mm
|
||||
`<rect x="${trimL1}" y="${tTop+m1b}" width="${m1a}" height="${t1}" fill="${cTrim}" stroke="${cTrim}" stroke-width="0.3"/>`,
|
||||
// 측면탭: 벽쪽 수직 11mm (코킹립 위에서 수평면까지, 'ㄴ'자 형성)
|
||||
// 코킹립: 측면탭 하단에서 벽쪽(좌측) 방향 수평 10mm ('ㄴ'자 하단)
|
||||
`<rect x="${trimL1-m1a}" y="${tTop+m1b}" width="${m1a}" height="${t1}" fill="${cTrim}" stroke="${cTrim}" stroke-width="0.3"/>`,
|
||||
// 측면탭: 벽쪽 수직 11mm ('ㄴ'자 세로획)
|
||||
`<rect x="${trimL1}" y="${tTop}" width="${t1}" height="${m1b+t1}" fill="${cTrim}" stroke="${cTrim}" stroke-width="0.3"/>`,
|
||||
// 수평면: 벽~립 (좌→우, 메인 커버)
|
||||
`<rect x="${trimL1}" y="${tTop}" width="${trimR1-trimL1}" height="${t1}" fill="${cTrim}" stroke="${cTrim}" stroke-width="0.3"/>`,
|
||||
@@ -868,8 +868,8 @@ function renderGrCross() {
|
||||
// 개구부쪽 3단: 수직 16mm (2단 좌측에서 아래로)
|
||||
`<rect x="${wrapX-t1-m1e}" y="${wrap1Y}" width="${t1}" height="${m1f}" fill="${cTrim}" stroke="${cTrim}" stroke-width="0.3"/>`,
|
||||
// ══════ 하단 ① 마감재 (② 하면 바깥을 감싸기, 거울상) ══════
|
||||
// 코킹립: 측면탭 하단에서 채널 내부(우측) 방향 수평 10mm
|
||||
`<rect x="${trimL1}" y="${tBot-m1b-t1}" width="${m1a}" height="${t1}" fill="${cTrim}" stroke="${cTrim}" stroke-width="0.3"/>`,
|
||||
// 코킹립: 측면탭 하단에서 벽쪽(좌측) 방향 수평 10mm ('ㄴ'자 하단)
|
||||
`<rect x="${trimL1-m1a}" y="${tBot-m1b-t1}" width="${m1a}" height="${t1}" fill="${cTrim}" stroke="${cTrim}" stroke-width="0.3"/>`,
|
||||
// 측면탭
|
||||
`<rect x="${trimL1}" y="${tBot-m1b}" width="${t1}" height="${m1b+t1}" fill="${cTrim}" stroke="${cTrim}" stroke-width="0.3"/>`,
|
||||
// 수평면
|
||||
@@ -911,8 +911,8 @@ function renderGrCross() {
|
||||
dimLines += `<text x="${dimRightX+8}" y="${by+bOuterW/2+4}" fill="#3b82f6" font-size="12" font-weight="900" text-anchor="start" font-family="Pretendard">${g.width} mm</text>`;
|
||||
// ② 플랜지 26mm (②의 립 끝 기준 라벨)
|
||||
dimLines += `<text x="${lipEndX+6}" y="${by+bFl/2+3}" fill="${cBody}" font-size="8" font-weight="700" text-anchor="start" font-family="Pretendard">②FL${g.flange}</text>`;
|
||||
// ① 코킹립 10mm (채널 내부 방향 라벨)
|
||||
dimLines += `<text x="${trimL1+m1a+4}" y="${tTop+m1b+t1/2+3}" fill="${cTrim}" font-size="8" font-weight="700" text-anchor="start" font-family="Pretendard">①립${m1a/sc}</text>`;
|
||||
// ① 코킹립 10mm (벽쪽 라벨)
|
||||
dimLines += `<text x="${trimL1-m1a-4}" y="${tTop+m1b+t1/2+3}" fill="${cTrim}" font-size="8" font-weight="700" text-anchor="end" font-family="Pretendard">①립${m1a/sc}</text>`;
|
||||
// 슬롯 개구 (우측 중앙)
|
||||
dimLines += `<text x="${lipEndX+6}" y="${by+bOuterW/2+16}" fill="#22c55e" font-size="8" font-weight="700" text-anchor="start" font-family="Pretendard">슬롯${bSlot/sc}</text>`;
|
||||
// 립 깊이
|
||||
|
||||
Reference in New Issue
Block a user