feat(rebar): C15·C16 폭 간격을 2 × 주철근 기본간격에 연동
- stairBars가 pitch를 받는다 (기본 2 × 기본간격 = 250, P1 그대로) - 3D와 철근표가 같은 pitch를 쓴다 - 철근표 간격·실간격: 2 × 기본간격, 근거는 기본값/입력 Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
3cfbdf62f6
commit
72053be420
5 files changed
+23
-5
No files matched your search
@@ -40,12 +40,16 @@ describe('C1–C8 상·하면 주철근 (코핑철근.md §5, plan C3)', () => {
|
||||
expect([c1.spacing, c1.actual, c1.basis]).toEqual(['250', '125', 'default']);
|
||||
const c12 = base.find((r) => r.name === 'C12')!;
|
||||
expect(c12.basis).toBe('default');
|
||||
const c15 = base.find((r) => r.name === 'C15')!;
|
||||
expect([c15.spacing, c15.actual, c15.basis]).toEqual(['250', '250', 'default']);
|
||||
|
||||
const m = buildPier({ ...loadP1(), copingRebar: { mainSpacing: 140 }, blockRebar: { spacingS1: 130 } });
|
||||
const rows = rebarSummary(m).rows;
|
||||
const c8 = rows.find((r) => r.name === 'C8')!;
|
||||
expect([c8.spacing, c8.actual, c8.basis]).toEqual(['280', '140', 'input']);
|
||||
expect(rows.find((r) => r.name === 'C12')!.basis).toBe('default');
|
||||
const c16 = rows.find((r) => r.name === 'C16')!;
|
||||
expect([c16.spacing, c16.actual, c16.basis]).toEqual(['280', '280', 'input']);
|
||||
const s1 = rows.find((r) => r.name === 'S1')!;
|
||||
expect([s1.spacing, s1.actual, s1.basis]).toEqual(['130', '130', 'input']);
|
||||
});
|
||||
|
||||
@@ -65,3 +65,12 @@ describe('C14 연직 발 (코핑철근.md §8)', () => {
|
||||
expect(omitted).toEqual([[4, 1], [4, 11]]);
|
||||
});
|
||||
});
|
||||
|
||||
describe('C15 간격 = 2 × 주철근 기본간격 (승인 2026-10-26)', () => {
|
||||
it('the default pitch is 250, and a larger pitch moves the 11 C15 bars apart', () => {
|
||||
const { c15 } = stairBars(L, B, m.copingRefTop);
|
||||
expect(c15[1].n - c15[0].n).toBe(250);
|
||||
const wider = stairBars(L, B, m.copingRefTop, undefined, 280).c15;
|
||||
expect(wider[1].n - wider[0].n).toBe(280);
|
||||
});
|
||||
});
|
||||
Reference in new issue
Block a user