- view/column-section-svg.ts: A 일반(P3, 커플러 없음), B 단부(P5, 커플러 1), C 확대기초 안(P4, 반원 2·커플러 2)
- P1·P2는 같은 각도에 r 875·843.2로 배치, 띠철근 둘레·겹침·반원 길이 표시
- P6은 P6 단이 그 높이에 있을 때만 중심을 지나는 현 4본 (0 · 46.96 · 90 · 133.04°)
- 기둥 패널에서 정면 ↔ 단면 A·B·C 전환 (단면 높이는 각 그룹의 첫 단, 새 계산 없음)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- view/column-elevation-svg.ts: 기둥 정면 SVG. 띠철근 P3·P5·P4·P6, 주철근 P1·P2, 커플러를 계산 결과 그대로 그림
- 번호는 P1–P6 (승인), 간섭(B11–P4)은 표시하지 않음 (검토 제외)
- 단부 배치구간 l_e = max(l_e,min, n·s + s/2)와 기초 안 깊이(0.5·H_f → m4·s)는 기존 계산값을 그림과 캡션에 표시
- 기둥 입력 라벨 K → P 번호
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- 기본 '이음 무시' (사양 결정). '반영'이면 정척(12000) 초과 철근을 l_s 겹침 2조각으로 나눔
- 위치: 기둥 중심 = 전체의 절반, 단부 = 정척 안에서 가장 끝 쪽 (짧은 조각 = 전체 + l_s − 12000, 긴 조각 = 12000)
- 철근표 조각 목록과 비고, 3D 두 조각(l_s 겹침)에 반영
- STANDARD_BAR를 common.ts로 옮겨 순환 import 방지
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- 단마다 양끝이 안으로 들어가는 양을 2d에서 d로 변경
- 상면 단 길이 12744 / 12686.8 / 12629.6 (기존 12744 / 12629.6 / 12515.2)
- 3D 상면 주철근의 굽힘 시작점도 같은 값을 쓴다
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- 세로 단 간격은 입력(기본 100, 범위 80–120)으로 상면 C1–C6, C14 상면, 기둥 C3 높이에 쓴다
- 가로 단 간격은 2d(H29, 57.2 mm)로 고정 (코핑철근.md의 s_lay 하나를 둘로 나눔)
- P1 기준 값 갱신: 상면 높이 43.284 / 43.184 / 43.084, C14 상면 43.208 / 43.108, P1 위 끝 zTop1 14776
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- core/rebar/coping-settings.ts: 입력 정의, 기본값(코핑철근.md), 범위(코핑_입력범위_제안.md), 검사 함수
- 다리 수는 4·6·8 목록으로 두고 홀수는 CP02로 막음
- 값은 적용 버튼을 누를 때만 draft에 쓰고 다시 생성 (범위 밖이면 반영하지 않음)
- PierInput.copingRebar, 모델 copingRebar, 변경 추적 키 추가
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The station input is removed. The section shows the 단부 (first shear
station, from the 3D bar records) and the first column centre, side by side.
- The 상면 간격 label is removed.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- Other bars (C9–C11, C14–C16) are left out of the section; bubbles only for C1–6, C7·8, C12·13.
- The top-row chain carries the label 상면 간격.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- Top row (C1–C8) spacing along the 교축 from chainDims, between the coping's
two long edges (±B/2).
- Side rows (C12·C13) along the EL, from the coping top EL down to the lowest
side bar.
- One bubble per bar group cut at the station, with a leader to its bars.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The chain is computed from the column centre (0) and is now drawn at the
column's position on the coping (x = column s), so the 0 sits on the column.
- P1: the 10@1000 span runs from 1000 to 11000 mm, centred on the column at 6000 mm.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The two chains are raised and their labels enlarged (220 mm).
- 코핑 길이 sits above both chains; 기둥 중심 has its own line between them.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- chainDims groups the repeated gaps (n@pitch = total) and writes a single gap as its length.
- Top chain: the 전단·띠 stations (C9 @250, C10 @300) from the coping ends.
- Lower chain: the upper C14 bars measured from the column centre (0), so
the 10@1000 span starts at the column centre.
- Stations are the lowest s of their pieces; pieces within 160 mm are one station.
- P1 gives the 시안 values: 300 · 18@250=4500 · 8@300=2400 · 18@250=4500 · 300 and
900 · 10@1000=10000 · 900.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The column-centre line 900 · 10@1000=10000 (기둥 중심부터) · 900, from the
design values, under the first dimension.
- A legend of the bar groups and their colours under the drawing.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- Nine bubbles (C1–6, C12·13, C9, C10, C11, C7·8, C14, C15, C16), each with a
leader to the middle of its bars.
- The top dimension 300 · 18@250=4500 · 8@300=2400 · 18@250=4500 · 300, drawn
only when it adds up to the coping length.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The coping section listed every piece of a bar as its own crossing, so the
same spot and name were drawn many times. Each spot is drawn once and each
bar name is written once.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- rebar3d records every bar (name, stretch, local points, diameter) next to its
mesh, so the 2D drawings use the same data as the 3D view.
- view/coping-rebar-svg.ts: the 정면 (along the coping length, EL vertical) and
the 단면·폐합 at a chosen station (the bars crossing it, C9–C11 loops included).
- ③ coping tab: 정면 / 단면·폐합 toggle and the station input.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The front block's S1 layout goes on the left and the back block's on the right,
so the text no longer falls into the gap between the two blocks.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The S1 layout runs along the 교각축 (vertical in the plan), so its text sits
beside the block, turned to match, instead of across the gap between blocks.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The S2 layout along the 교축 (below the block), the S1 layout along the 교각축
(beside it), and the block width, in the same form as the C–C section.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- view/block-rebar-plan-svg.ts: the selected pair from above — S2 lines along the
교각축 (spaced at S2 across the 교축), S1 lines along the 교축 (spaced at S1),
each end a dot (leg); the bar sets carry the row numbers only (S1, S2).
- The ③ card switches between the C–C section and the plan.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The section was drawing every bearing on the same 교축 line, so the blocks and
dimension text stacked on top of each other. It now cuts through the selected
pair (①·⑥ …), which the ③ card also shows as chips, shared with ②.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- Six inputs with their ranges and P1 defaults; a change regenerates the pier.
- The 적용 블럭 line shows the blocks (분리 n개 or 일체 n쌍, 전체).
- view/block-rebar-svg.ts: the section C–C along the 교축 with the S2 dots, the
S1 lines and legs, and the dimensions (block widths, the S2 layout).
- 받침블럭 철근 설정 is tracked for changes (defaults vs the current draft).
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- RB01 a setting outside its range (cover 50–100, side cover 50–100, first gap
0–150, spacing S1/S2 100–200, leg 500–1000); RB02 S1 depth at or above the
block height; RB03 the legs do not reach into the coping.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- PierInput.blockRebar (partial): cover top, side cover, first gap, spacing S1
and S2 (separate), leg length. Defaults are the P1 values, so P1 is unchanged.
- S2 depth = top cover; S1 depth = top cover + S1/2 + S2/2 (H19: 69.1 at the default).
- The model carries the settings; the bearing-block rebar, the 3D bars, and the
summary use them.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- Blocks, solplates, and the dashed drawing outlines are turned by the bearing's
방위 (rowSkewDeg), the same turn as the 3D block; each bearing is labelled
with its 방위 in degrees.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- Blocks, solplates, and bearing centres sit at their real 교각축 positions;
the pair's offset is not aligned away. The 편심 is written on the figure.
- C4 and C5 dimensions run from the block edges to the bearings.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- 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>
- C4 runs from the block top edge to the bearing row, C5 from the bearing row
to the bottom edge. The values are the model's C4 and C5.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- Blocks and solplates are drawn on one line across the 교축; the 교각축 offset
of the bearings is written as text.
- Arrows for the 교축 (horizontal) and the 교각축 방향 (vertical).
- Dimensions along the bottom: C1 (bearing to block edge), C2 (between the
bearings), C1, and C3 (block span).
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- view/bearing-section-svg.ts: the pair's elevation — blocks (일체: one stepped
outline), mortar, bearing body and solplate per bearing from the model; the
drawing heights overlaid dashed. EL.X at the mortar top, E = h1 + h2 + h3 + h4.
- view/solplate-svg.ts: per bearing, the plan L × W and the taper T1 · T2
(S %), with the drawing values dashed.
- ② bearing card: section figure and the two solplate figures under the plan.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- A 일체 pair's inner sides face the other bearing, so they are not C4 or C5:
they are null and shown as "—" in the 배치 규칙 table.
- The table headings now describe the 교축 margins (bearing to the outer block edge).
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- bearingEdgeDistances now reads the block geometry: 분리 1200 blocks are
centred on the bearing (600 / 600); 일체 uses the pair's 2500 block (outer
margins 601, within the 5 mm tolerance of 600).
- The plan labels C4 and C5 from these values; the coping-edge definition is removed.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- C4·C5 measured across the coping width (교각축 직각): the two coping edges
at ±B/2 to the bearing centre. The former along-the-axis definition is replaced.
- view/bearing-plan-svg.ts: the plan of one pair with the model's solplates
and the block outline(s) (일체: one 2500 × 1200; 분리: two 1200 × 1200), and
the drawing A/B overlaid as dashed outlines.
- ② bearing card: 상세 보기 pair chips (①·⑥ …) and the overlay toggle.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- integrated-block.ts: per pair (전열 k · 후열 k) one block centred on the
pair midpoint, 2500 across the 교축 and 1200 along the 교각축, with a
stepped top (each half to its own bearing row top). Only when 일체 is chosen
and every pair is within 100 mm; otherwise 분리 is kept (B02).
- Rebar: S2 19 bars at 125 across the 2500 (10 front half, 9 back half), each
leg from its half's top; S1 8 bars across the 1200, 3800 long, depth from
the lower top. Totals per pier: S1 40, S2 95 (분리: 80 / 80).
- Scene and 3D rebar draw the stepped blocks instead of the per-bearing blocks.
- The per-bearing blocks stay for the solplate, the pads, and the body.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- 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>
- C4/C5 = distance from the coping edge to the bearing centre along the
coping length, from the model; the drawing value is for comparison only.
- A pair is a front and back bearing of the same order within their row. A
pair with an eccentricity above 100 mm forbids 일체 (분리 first).
- ② bearing card: read-only table of C4/C5 and the pair eccentricities.
- The 일체 block model is not built yet.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- PierInput.bearingType: text, absent = 탄성받침. Tracked for changes, so it
can be reverted. Saved in the project; no rule yet, so it does not change the model.
- Shown on the ② bearing card above the 공통 규칙.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- Rules confirmed (승인 2026-10-26): datum MSL; 고조위 HWL and 저조위 LWL as
two levels; 세굴 깊이 as for 하상; 파랑과 선박 하중 excluded from this scope.
- Checks: G13 levels missing, G10 해저면 not below 고조위, G11 저조위 not
below 고조위, G14 pile wall at or below the corrosion allowance reference.
- CORROSION_ALLOWANCE_MM = 1 is a PLACEHOLDER reference (not in the RAG
documents); the card and G14 mark it as to be confirmed.
- Card: the 해상 inputs; the section draws 고조위 (solid), 저조위 (dashed),
and labels the ground line 해저면 EL.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- shape-options: a per-option "confirmed" flag; 하상 is confirmed, 해상 is not.
- The 위치 chips store the choice in the pier's draft; 선택 shows it.
- 하상: the groundwater inputs give way to 설계홍수위 DHWL (floodLevelEl) and
세굴 깊이 (scourDepthM). The groundwater value is kept (남겨두기).
- Checks: G07 DHWL missing, G08 DHWL below the 지반고, G09 scour negative or
the scour line below the footing bottom. The groundwater check is skipped for 하상.
- Section: the DHWL as a solid line and the 세굴선 dashed.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- StrataRow.nValue: text. "23" is a blow count (0–100), "50/5" a refusal
(50 blows for 5 mm, 1–300 mm). Empty means not known yet.
- G06 (warning): a malformed N value. Strict, because the values will feed the
bearing-capacity and liquefaction checks.
- The layer table has an N값 column; the project file checks that the rows
are well formed.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- The 위치 buttons duplicated the 형상 옵션 chips above the card. The chips
stay the one place for 위치 (only the default is selectable until Q6).
- The water-level row lays out as a flex row, so its label and input do not
overlap.
- The 연암 상면 caption sits just under the line instead of over the band label.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- ground.ts: G04 when a pile tip is above the 연암 상면 minus 1.0 × D; G05
(info) when layers are entered but there is no 연암 row. No message while
no layers are entered at all.
- ground-model.ts: reads the Python soil.layers as strata rows; the project
file keeps and checks them.
- ② card: a button fills the layer rows from the ground model for the pier.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- types/ground.ts: 위치 (육상·하상·해상), 지하수위 고려 and EL, 지층 행
(name and 하단 EL, from the top down). Checks G01 (layer order), G02 (water
level range), G03 (layer name).
- The 지반고 still feeds the soil cover check; the layer rows and water level
are inputs and do not change the 3D model.
- view/ground-svg.ts: the 삽도 drawn from the inputs and the generated
footings and piles on one EL scale.
- 일괄 적용 copies 위치 and 지하수위 to the checked piers (속성 복사 item,
off by default). Changes list shows arrays and booleans as text.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- A file without a schema number is refused again; the example output in
RAG/pierzainer_ground now has schema 2, so the temporary path is not needed.
- The legacy fixture is removed; tests cover the missing and null schema
numbers and a pier without a ground object.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- ground-model.ts: read schema 2 terrain_grid (origin, step, nx, ny, z),
checked the same way as the stored project form; schema 1 is still read.
- view/terrain.ts: the grid as a mesh in pier-scene coordinates
(x = E − pivot E, z = −(N − pivot N), y = EL), same as the pier frame.
Cells with a missing corner are not drawn.
- scene.ts: draws the terrain in place of the 60 m plane when the model has a
grid; the camera fits the members, not the terrain.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>