fix(bearing): C4 and C5 are the 교각축 distances from the bearing to the block edges (승인 2026-10-26)

- bearingEdgeDistances measures along the 교각축: 분리 600 / 600; 일체 from the
  pair block centred on the mean 교각축 position (P1 outer margins 557).
- Table headings updated; C1 · C2 · C3 on the plan are measured on the 교축 from the drawn positions.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
ypshimandClaude Haiku 5.5 committed 2026-10-26 13:17:50 +09:00
1 parent 29acfba1e1
commit 2f67efd449
4 files changed
+31 -36

No files matched your search

+11 -7
View File
@@ -23,14 +23,18 @@ describe('받침 배치 규칙 (승인 2026-10-26)', () => {
}
});
it('일체: the outer margins stay 600 (C4 of the front bearing, C5 of the back bearing)', () => {
it('일체: C4 and C5 along the 교각축 from each bearing to the block edges, from the pair block (centred on the mean)', () => {
const ib = integrated.integratedBlocks[0];
const d = bearingEdgeDistances(integrated);
// The 2500 block is centred on the pair midpoint, so the outer margins are 601 (within the 5 mm drawing tolerance of 600).
expect(d.find((x) => x.no === 1 && x.row === '전열')!.leftMm).toBeCloseTo(600, -1);
expect(d.find((x) => x.no === 6 && x.row === '후열')!.rightMm).toBeCloseTo(600, -1);
// the inner sides face the other bearing of the pair: no C4 or C5 there
expect(d.find((x) => x.no === 1 && x.row === '전열')!.rightMm).toBeNull();
expect(d.find((x) => x.no === 6 && x.row === '후열')!.leftMm).toBeNull();
const f = d.find((x) => x.no === 1 && x.row === '전열')!;
const k = d.find((x) => x.no === 6 && x.row === '후열')!;
const fb = integrated.blocks.find((b) => b.no === 1)!;
const kb = integrated.blocks.find((b) => b.no === 6)!;
expect(f.leftMm).toBeCloseTo((fb.s - (ib.s - 0.6)) * 1000, 6);
expect(f.rightMm).toBeCloseTo(((ib.s + 0.6) - fb.s) * 1000, 6);
expect(k.rightMm).toBeCloseTo(((ib.s + 0.6) - kb.s) * 1000, 6);
// the outer margins (front C4, back C5) are equal on P1
expect(f.leftMm).toBeCloseTo(k.rightMm, 6);
});
it('the front and back bearings of one number are about 85 mm apart on P1, so 일체 is allowed', () => {