- view/footing-section-svg.ts: B5–B8 선, B1–B4 점, B9 행 선, B10-1 측면 점, B11 선, B12 점을 계산 함수 결과로 그림
- 치수: 폭 W, 격자(e · n@s=G · e), 피복, B10 단 수 @ s_v, 높이 방향 축소 표시
- 풍선(B1–B5, B11, B2–B4, B10-1)을 누르면 그 철근만 강조, 다시 누르면 해제
- 테스트: 점·선 개수가 철근표 개수와 같음 (B1·B2·B4, B9 행, B10-1, B11 단, B12)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- 간격 = k·s: B11은 L 방향 격자(교각축 직각 s), B12는 W 방향 격자(교각축 s). 기본 k = 8 (1000 mm, s = 125)
- 개수는 격자 k칸마다, 조립 단 엇갈림 2칸 유지. 3D 철근도 같은 간격
- 기본 k = 8이므로 P1 기본값의 B11·B12 개수가 60 / 47 → 30 / 24로 바뀜 (k = 4이면 문서값 60 / 47을 재현, 테스트로 확인)
- 패널에 k 두 칸, 규칙 표시에 B11·B12 간격 (k·s)
- FT02를 n·kB11·kB12 정수 검사로 확장
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- footing-settings: s → sAxis(교각축) · sPerp(교각축 직각), 범위는 동일 (100–150)
- grid·gridPositions가 방향 키를 받음. B1–B4 grid는 sAxis, B5–B8 grid는 sPerp, B9 행·열은 sAxis, B11·B12는 sPerp
- 철근표 간격·실간격과 근거가 방향별 값을 씀 (B12는 교각축 직각 값, 승인 2026-10-26)
- 3D 확대기초 그림의 위치도 방향별 값을 씀
- 패널 입력 두 칸으로 분리
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- core/rebar/footing-settings.ts: 입력 정의, 기본값(확대기초철근 (1).md), 범위(제안), 검사 (FT01 범위, FT02 n 정수)
- 확대기초 계산 함수가 설정을 인자로 받음 (기본값 = 기존 값, 기존 호출은 그대로)
- 3D 확대기초 그림의 125·100 하드코딩 제거, 철근표·3D·기둥 층 높이가 같은 설정을 씀
- 패널: 상면·측면·하면 피복을 칸 분리, s_v와 e_top 분리. 고정 규칙(k=2, Δ₂=100, 전단 4s·엇갈림 2s, cycle 교대)과
B2·B6 디리는 읽기 전용으로 표시
- 기본값에서 P1 결과 불변 (기존 테스트 통과)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- 단면 순서와 문자를 삽도에 맞춤: A 일반(P3), B 확대기초 안(P4, 반원 2·커플러 2), C 단부(P5, 커플러 1)
- 각 단면에 지름 2000과 125 · 875 치수선 표시 (D, c, r1에서 계산)
- 규격과 간격 표기: P1·P2 S32 Div.46, P3·P4·P5 H19 @ 입력값
- 커플러는 띠철근 위 점에서 지시선을 따라 원 밖의 작은 원으로 표시
- P4 형상과 기본 간격은 문서 값 유지 (입력으로 삽도 값 @100 입력 가능)
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- 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>
- 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>
- 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>
- 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>
- 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>
- 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>
- 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>
The plan has overall dimension lines (length along the top, width at the right) and two chains: along the length, the
distances from the footing edge to the first pile and between piles; across the width, the same for the pile rows. The
chains are read from the pile positions, so they follow the layout.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
The side view has dimension lines with 45° ticks: the footing length (mm) above the footing, the footing height h1 at its right,
and the visible pile length (끊음) at its left. The margins are wider (1.5 m) for the labels; the plan uses the same margin so the
two views stay aligned. The old h1 label is replaced by the dimension label.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
The dimension labels were 0.28 m, about 6 px on screen. They are 0.5 m now, so the mm values can be read.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
The break lines ran across the members at a slant. They are now two short slanted strokes on the column stub and across the
pile group, and the pile label is moved below the break.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Plan and side use the same scale (22 px per m) and share their horizontal extent, so the footing lines up. The side view breaks
the column (3 m above the footing) and the piles (4 m below it) so its height stays near the plan's. The row is three columns
from 1100 px, the side view drops to its own row between 800 and 1100 px, and it stacks below 800 px.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>