- buildPier builds on buildAxis: each object carries its stretch k and a local
s from that stretch's base; coping parts are per stretch with the mitre plane
trimming the overlap in the scene (renderer.localClippingEnabled).
- Straight P1 output is unchanged (regression tests pass).
- Bent coping is supported for 현장타설말뚝 only; footings and piles on a bent
axis remain 미실시 until stage 3. Kink outside the coping and columns within
the Level half-width of the kink are refused.
- W03/W04 use coping coordinates (g).
- Tests: constructed 60° bend — world coordinates of bearings, blocks and the
column survive the stretch frames; mitre sides; scene mesh count; refusals.
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- public/samples/운곡교P1입력.xlsx is a byte copy of RAG/운곡교P1입력.xlsx
- loadP1 and the sample loader read the three-sheet input
- spec workbook (intent.PR) stays for the single-sheet regression tests
- test: input file has sheets 교각 · IP · 받침 and parses to P1 with no issues
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- buildTemplateWorkbook: 교각 · IP · 받침 sheets with the headers the parser
reads; value cells left empty so no blank-name rows raise E05
- dialog button 입력 템플릿 다운로드 (.xlsx)
- tests: sheet order, parser recognition, write-and-read round trip
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- one workbook may hold the three tables on separate sheets (user decision,
recorded in DOC/03_설계); spec 2.2 one-sheet-per-pier is superseded
- E05 for rows whose 교각명 has no matching 교각 정보 row, or a pier missing IP/받침
- helper sheets (IP only, 받침 only) are shown as 보조 표 시트, not selectable
- test: three-sheet workbook built from the P1 sheet
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- E05: a sheet whose pier, IP, or bearing table is not on the same sheet is
not selectable (spec 2.2: one sheet per pier)
- a sheet is selectable only if every pier in it builds; the reason is shown
next to the sheet instead of a selectable sheet with an unchecked pier
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- main screen follows 시안 ①: header steps, pier list with type filter and
multi-select, viewer with 아이소/정면/측면/평면, part toggles in mockup order,
input panel and result sections
- import moved to a modal dialog following 시안 ④: project name (required),
file drop and pick, per-sheet recognition with selectable piers, preview of
pier and bearing tables, glossary of Excel column names
- Esc closes the dialog and focus stays inside it (native dialog)
- 44px touch targets and 2px focus rings; colours from the mockup tokens
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- parseWorkbook returns a report per sheet (table counts, issues, ok)
- sheets with E-level issues cannot be selected (spec section 2.3)
- pier input carries its source sheet name
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
- three.js scene in the pier frame (pivot at first column centre)
- coping as extruded elevation outline; columns, footings, piles, blinding, bearing blocks and pads
- four view presets, per-part visibility toggles
- workbook load (sample or file), result table, issue list and undetermined defaults
- frame orientation test and bounding-box test
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>