feat(view): round bar bends at the centre-line radius; bend factors as inputs on ③

Bars drawn through several points are one tube each, with every bend rounded by R·tan(φ/2) at the centre-line radius
(inner factor × d + d/2). The inside-radius factors (D16 and below, D19–D25, D29–D35, D38 and above) are inputs in 공통
설정, with KDS-based defaults 2 / 3 / 4 / 5. The size-class limits sit in one place (SIZE_CLASS), which also fixes
D25 (25.4) being read as the D29–D35 class in hookLength. The helper bendDeduction gives the centre-line deduction for
the length option, which is not yet applied to the 철근표 lengths.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
ypshimandClaude Haiku 5.5 committed 2026-10-23 10:13:16 +09:00
1 parent 03bb1f9929
commit 30e5e75c22
7 files changed
+146 -21

No files matched your search

+5 -5
View File
@@ -108,11 +108,11 @@ describe('확대기초 B9 · B10 · B11 · B12 in 3D (확대기초철근 (1).md
expect(rb.byName.get('B9')!.length).toBe(306 * 3);
});
it('B10-1 / B10-2: 18 each (9 levels × 2 faces), each three pieces; B11 60, B12 47', () => {
expect(rb.byName.get('B10-1')!.length).toBe(18 * 3);
expect(rb.byName.get('B10-2')!.length).toBe(18 * 3);
expect(rb.byName.get('B11')!.length).toBe(60 * 3);
expect(rb.byName.get('B12')!.length).toBe(47 * 3);
it('B10-1 / B10-2: 18 each (9 levels × 2 faces); B11 60, B12 47 — one tube per bar (bends rounded, 수정 2026-10-23)', () => {
expect(rb.byName.get('B10-1')!.length).toBe(18);
expect(rb.byName.get('B10-2')!.length).toBe(18);
expect(rb.byName.get('B11')!.length).toBe(60);
expect(rb.byName.get('B12')!.length).toBe(47);
});
});