fix(rebar): column heights Hc and h_cop from the model (Level underside, step top) instead of P1 constants
Hc = Level underside − footing top, and h_cop = step top at the column centre − Level underside. P1 gives 12703 and 2644, unchanged. With taper h2 = 3000 the Level underside moves down, so Hc = 11203 and the P2 top (Level underside + l_d) moves to 13039, while the P1 top stays at the step top (15147). The 3D and the 철근표 use the same heights. Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
df6aeb5c46
commit
f37a0bf9ce
4 files changed
+46
-4
No files matched your search
@@ -1,3 +1,4 @@
|
||||
import type { PierModel } from '../geometry';
|
||||
import { DEFAULT_MATERIAL, developmentLength, fyOf, hookLength, Material, NOMINAL_DIAMETER, spliceLength } from './common';
|
||||
import { layers } from './footing';
|
||||
|
||||
@@ -35,6 +36,19 @@ export interface ColumnInput {
|
||||
}
|
||||
|
||||
/** 예제 운곡교 P1 (기둥철근.md §1.2 기본값). */
|
||||
/**
|
||||
* Column inputs from the model (1단계 연계, 승인 2026-10-23). Hc = Level 하면 − 확대기초 상면 (기둥철근.md §2: 12.703 on P1);
|
||||
* h_cop = 계단 상면(기둥 중심 구간의 상면) − Level 하면 (2.644 on P1, 43.555 − 40.911). Only these two follow the model;
|
||||
* the other values stay as in COLUMN_P1.
|
||||
*/
|
||||
export function columnInputFor(model: PierModel, base: ColumnInput = COLUMN_P1): ColumnInput {
|
||||
const col = model.columns[0];
|
||||
const seg = model.segments.find((g) => col.s >= g.s0 - 1e-9 && col.s <= g.s1 + 1e-9) ?? model.segments[0];
|
||||
const Hc = Math.round((model.levelBottom - model.footings[0].top) * 1000 * 10) / 10;
|
||||
const hcop = Math.round((seg.top - model.levelBottom) * 1000 * 10) / 10;
|
||||
return { ...base, Hc, hcop };
|
||||
}
|
||||
|
||||
export const COLUMN_P1: ColumnInput = {
|
||||
D: 2000,
|
||||
Hc: 12703,
|
||||
|
||||
Reference in new issue
Block a user