feat(bearing): 일체 choice gated by the pair eccentricity rule (승인 2026-10-26)

- PierInput.bearingLayout: 분리 (default) or 일체, tracked for changes.
- 일체 is selectable only when there is at least one pair and every pair is
  within 100 mm; otherwise the chip is disabled with the reason.
- Validation: B01 (info) when 일체 is chosen and allowed, the block shape is
  still the 분리 shape; B02 (warning) when it is not allowed and the model
  falls back to 분리.
- The 일체 block shape (2500 × 1200) is not modelled yet.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
ypshimandClaude Haiku 5.5 committed 2026-10-26 11:56:26 +09:00
1 parent cd18665d6a
commit 2af5cfb144
7 files changed
+75 -7

No files matched your search

+10
View File
@@ -53,3 +53,13 @@ export function pairEccentricities(blocks: BlockModel[]): PairEccentricity[] {
}
return out;
}
/**
* 일체 is possible when there is at least one pair and every pair is within the limit (승인 2026-10-26).
* Returns the pairs over the limit so the reason can be shown.
*/
export function integratedCheck(blocks: BlockModel[]): { allowed: boolean; overLimit: PairEccentricity[] } {
const pairs = pairEccentricities(blocks);
const overLimit = pairs.filter((p) => !p.allowed);
return { allowed: pairs.length > 0 && overLimit.length === 0, overLimit };
}