fix(rebar): warn when the pile spacing along a 열 is above the 2250 mm maximum

The card only checked the minimum spacing. A 12000 mm footing with 5 piles per 열 gives 2650 mm, above the maximum. The card
now marks such a row ("최대 2250 mm를 넘습니다. 본수를 늘리세요") and the alert list gets a warning (P02). Tests check 5 and 6
piles on a 12000 mm footing.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
ypshimandClaude Haiku 5.5 committed 2026-10-23 16:20:37 +09:00
1 parent 65f8ca2279
commit d61e5d082f
3 files changed
+34 -3

No files matched your search

+6 -1
View File
@@ -50,12 +50,17 @@ export interface RowLayout {
spacing: number;
/** True when the spacing is below the minimum (warning, not refused). */
belowMinimum: boolean;
/** True when the spacing is above the maximum 2.25 m (warning: add piles). */
aboveMaximum: boolean;
}
/** Maximum centre spacing of the piles along a 열 (m), spec §4.6 (승인 2026-10-23: 2250 mm). */
export const PILE_SPACING_MAX = 2.25;
export function rowLayout(counts: number[], g: PileGeometry): RowLayout[] {
return counts.map((count) => {
const spacing = (g.footingLength - 2 * g.end) / (count - 1);
return { count, spacing, belowMinimum: spacing < g.minSpacing - 1e-9 };
return { count, spacing, belowMinimum: spacing < g.minSpacing - 1e-9, aboveMaximum: spacing > PILE_SPACING_MAX + 1e-9 };
});
}