fix(B06): 링크 카드 성토부선을 기준벽 연장으로 판정한다

단별 구간값을 넣으면서 성토부선까지 단(tier) 연장으로 잠갔다. 단 기본 연장이
10m(전/후 5)라 5.9m 떨어진 링크 카드에서는 기준벽이 서는데도 그 아래 성토부선이
통째로 사라졌다. 성토부선은 기준벽 소유물이므로 inletIn/outletIn으로 판정하고,
다단 벽만 자기 구간값으로 판정한다.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-08-29 10:57:38 +09:00
co-authored by Claude Opus 5
parent 1e55322f2f
commit 36d09dbf00
@@ -273,9 +273,9 @@ function trimLinkedLayout(layout: CulvertLayout, link: CulvertLink): CulvertLayo
extraWalls: layout.extraWalls.filter((_wall, i) =>
spanCovers(tierSpanOf(link.source, `extra${i}`), link.deltaM),
),
outletFill: spanCovers(tierSpanOf(link.source, "extra0"), link.deltaM)
? layout.outletFill
: empty,
// 성토부선은 **기준벽** 소유다 — 단 구간값으로 잠그면 기준벽이 선 카드에서도
// 벽 아래 성토선이 사라진다(2026-08-30 사용자 지적: 우측 링크 카드에 성토 없음).
outletFill: outletIn ? layout.outletFill : empty,
// 집수정은 **소유 측점 횡단도 하나에만** 선다(2026-08-24 사용자 확정) — 기슭막이와
// 달리 옆 측점으로 이어지는 구조물이 아니다. 계류측 다단·성토부선도 집수정에 딸린
// 것이라 함께 뺀다. 3D에서는 소유 측점 하나가 자기 길이(기본 2m)만큼 스윕한다.
@@ -286,10 +286,7 @@ function trimLinkedLayout(layout: CulvertLayout, link: CulvertLink): CulvertLayo
spanCovers(tierSpanOf(link.source, `bextra${i}`), link.deltaM),
)
: [],
basinFill:
spec.hidden_pipe && spanCovers(tierSpanOf(link.source, "bextra0"), link.deltaM)
? layout.basinFill
: empty,
basinFill: spec.hidden_pipe && inletIn ? layout.basinFill : empty,
basin: null,
designTrim: keepTrimSides(
layout.designTrim,