Commit Graph
122 Commits
Author SHA1 Message Date
ypshimandClaude Haiku 5.5 4fc02afb1a feat(view): 체크한 교각을 활성으로 보고 기준 교각 수정값을 활성 교각에 적용
- 체크 = 활성: 체크된 교각(모델 있는 것)과 기준 교각을 3D에 함께 표시
- ② 형상계획도 활성 교각이 2기 이상이면 같은 좌표계로 배치
- 이름 클릭 = 기준 교각: 코핑·말뚝 수정 카드의 대상
- '활성 교각에 적용': 기준 교각의 변경 항목만 다른 활성 교각에 복사 (확인 후, 다시 생성으로 반영)
- 입력값 표: 활성 교각 행 음영, 기준 교각 굵게

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 15:45:05 +09:00
ypshimandClaude Haiku 5.5 60e50b1186 feat(view): 3D 뷰에 전체 보기 버튼 다시 추가
- 부재 표시·시점 버튼과 같은 우측 패널에 배치
- ① 형상 생성에서는 기본이 전체 보기이며, 버튼으로 단일 보기와 전환
- 다른 단계에서는 버튼 비활성

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 15:33:53 +09:00
ypshimandClaude Haiku 5.5 d2ebce026d refactor(view): 3D 뷰의 전체 보기 버튼 삭제, ① 진입 시 전체 보기로 시작
- 전체 보기 버튼 제거. ① 형상 생성은 항상 전체 보기로 열림
- 다른 단계에서 ①로 돌아오면 전체 보기로 다시 설정
- 교각을 눌러 단일 보기로 바꾼 뒤에는 ①로 다시 들어와야 전체 보기로 돌아감

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 15:32:02 +09:00
ypshimandClaude Haiku 5.5 12e9828a3a feat(view): 입력값을 6기 표로 보이고 코핑·말뚝 수정 대상 교각을 표시
- 입력값: 교각마다 한 행(코핑 상면·기초 하단·지반고·말뚝·코핑 폭×길이·받침)
- 행을 누르면 그 교각이 활성이 되고 상세와 수정 대상이 바뀜
- 수정 카드 제목에 대상 교각 이름을 표시

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 15:29:34 +09:00
ypshimandClaude Haiku 5.5 b0a71fc73f feat(import): 엑셀 불러오기 미리보기에 전체 교각의 입력값 표시
- 교각 정보: 교각마다 열 하나, 행은 형식·EL·기초·말뚝·두부보·기둥·받침/IP 수·불러오기 여부
- 받침과 IP: 모든 교각을 한 표에 두고 교각 열을 추가, 표는 스크롤
- 교각 이름 클릭으로 미리볼 교각을 고르던 방식은 제거 (전체를 보여 줌)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 15:26:35 +09:00
ypshimandClaude Haiku 5.5 2caed5b87f feat(view): 형상 생성 화면에서 전체 보기를 기본으로 선택
Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 15:19:49 +09:00
ypshimandClaude Haiku 5.5 e5d8002c79 fix(view): 지형 모델이 없을 때 60 m 사각판 대신 교각별 지반고 선 표시
- 지형 격자가 없으면 교각 지반고 위치에 얇은 선(코핑 길이 + 여유 2 m)만 그림
- 전체 보기에서도 지형이 없으면 교각별 지반고 선을 표시, 지형이 있으면 공유 격자만 표시
- 부재 표시 '지반' 체크박스는 두 경우 모두 동작
- 테스트: 얇은 선 위치와 길이, 지형 있을 때 선 미표시

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 15:16:49 +09:00
ypshimandClaude Haiku 5.5 a2ad0f2baf feat(view): 전체 보기로 6기 콘크리트를 한 화면에 표시
- 교각별 축 위치(pivot E·N 차이)로 장면을 배치하는 pierOffset과 buildAllPiers 추가
- 지형 격자는 기준 교각(첫 교각) 좌표로 한 번만 그림, 교각별 지반면은 숨김
- 철근은 표시하지 않음 (콘크리트만). ① 형상 생성에서만 동작
- 전체 보기에서 교각을 클릭하면 그 교각을 활성으로 하고 단일 교각 보기로 전환
- 테스트: 위치 오프셋 부호, 피벗을 옮겨도 같은 월드 상자

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 15:08:09 +09:00
ypshimandClaude Haiku 5.5 ab04c19afb feat(rebar): 확대기초 다리 배치 상세 탭과 B10 모서리 탭 추가
- core/rebar/footing-legs.ts: 번호별 다리 형태·길이·끝 높이·이음 여부 (계산 함수 결과 사용)
- view/footing-corner-svg.ts: B10-2 → B10-1 모서리 갈고리, 깊이 122.25 / 123.85, l_h 296, 최하단 제외 표시
- 패널 탭 4개 모두 작동 (B10 모서리는 개략도, 단면 비율 아님)
- 테스트: 12개 철근, B2 다리 1723, B6 이음 필요, 모서리 값

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 14:09:13 +09:00
ypshimandClaude Haiku 5.5 0e9d89951a feat(rebar): 확대기초 교각축 단면(길이 L) 탭 추가
- view/footing-section-l-svg.ts: 길이 방향 단면 (B1–B4 점, B5–B8 선, B9 세로선, B10-2 점·B10-1 선, B11 점, B12 선)
- 탭 전환: 교각축 직각 단면(폭 W) ↔ 교각축 단면(길이 L), 다리 배치 상세·B10 모서리는 다음 단계
- 테스트: 점·선 개수가 철근표 개수와 같음

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 13:56:05 +09:00
ypshimandClaude Haiku 5.5 d3c761dcd1 feat(rebar): 부재별 fck 초기값을 교각도 기준으로 설정 (기둥·코핑 40, 기초 27)
- 화면 초기 상태만 변경. 코어 기본값과 테스트는 그대로 (기존 프로젝트 파일의 값은 유지)
- 철근 강도 H = SD400(코핑), S = SD500(기둥·기초)은 기존 설정과 도면이 이미 일치

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 13:52:46 +09:00
ypshimandClaude Haiku 5.5 71fdb75c71 Reapply "feat(rebar): B1–B4와 B5–B8 방향 교환 (B1–B4는 W 방향, B5–B8은 L 방향)"
사용자 요청으로 방향 교환을 다시 적용 (99db6a1 되돌림). 격자 키 sL/sW, 3D·단면·철근표 역할과 테스트 기대값이 교환 기준으로 돌아감.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 09:51:04 +09:00
ypshimandClaude Haiku 5.5 99db6a1f52 Revert "feat(rebar): B1–B4와 B5–B8 방향 교환 (B1–B4는 W 방향, B5–B8은 L 방향)"
이 교환은 9,350 방향이 L이라는 가정에서 적용됐으나, 단면 삽도(B5–B8 선, 교각축 직각 단면)와 재료표가 원래 배치(B1–B4 L 방향, B5–B8 W 방향)와 맞는 것으로 확인되어 되돌림.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 09:48:05 +09:00
ypshimandClaude Haiku 5.5 a026d52799 refactor(rebar): 확대기초 단면의 풍선 클릭 강조 기능 제거
- 풍선 클릭 리스너와 강조 함수 제거, 풍선은 라벨로만 표시
- 캡션에서 "풍선을 누르면" 문구 제거

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 09:44:08 +09:00
ypshimandClaude Haiku 5.5 752de2fd9d feat(rebar): B1–B4와 B5–B8 방향 교환 (B1–B4는 W 방향, B5–B8은 L 방향)
- 재료표(B5–B8 9150 = 9350 − 2c, B1–B4 7600 = 7800 − 2c)와 같은 방향 배정으로 맞춤
- 격자 키를 물리 방향으로 정리: sL = L 방향 간격, sW = W 방향 간격 (기존 sAxis → sL, sPerp → sW)
- B1–B4: L 격자로 개수, 길이 W − 2c. B5–B8: W 격자로 개수, 길이 L − 2c
- B9: 열(L)은 sL, 행(W)은 sW 격자 (물리 격자 일치), 개수 불변
- B11은 L 방향 간격(sL), B12는 W 방향 간격(sW)
- 3D 확대기초 철근과 단면 그림의 역할을 교환 (B1–B4 선, B5–B8 점)
- 철근표 간격과 규칙 값, 설정 라벨을 방향 기준으로 수정
- 테스트 기대값 갱신 (B1–B4 40, B5–B8 31, B6 13646 분할 경고)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-27 09:36:20 +09:00
ypshimandClaude Haiku 5.5 6c7a7ff781 feat(rebar): 확대기초 단면 삽도 2단계 (범례·선 스타일·치수선·다리 주석·기둥·말뚝·실제 비율·탭 4개)
- 선 스타일을 삽도에 맞춤: B5–B8 청록 실선, B1–B4 주황 점, B9 보라 세로선, B10 녹색 점, B11 회색 파선, B12 회색 점
- 범례 5항목 (선 모양별)
- 하단 치수선(피복 · 격자 e · n@s=G · e)과 우측 높이 치수선(상면 피복 · B10 단 · 하면 피복), 화살 끝 표시
- B6 다리 주석 "B6 다리 → B5 높이 (값)"
- 기둥 블록(상부)과 말뚝 머리(하부)를 맥락 그림으로 표시
- 높이 방향을 실제 비율로 그림 (축소 없음)
- 탭 4개 중 "교각축 직각 단면 (폭 W)"만 작동, 나머지는 다음 단계 자리로 비활성

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-26 18:02:51 +09:00
ypshimandClaude Haiku 5.5 c91fe74d9a feat(rebar): 확대기초 교각축 직각 단면(폭 W) 삽도 1단계
- 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>
2026-10-26 17:42:03 +09:00
ypshimandClaude Haiku 5.5 6957054f4c fix(rebar): 확대기초 n 라벨을 "B11·B12 연직간격 배수"로 변경 (FT02 메시지 포함)
- 변수 이름 n과 계산은 그대로 (조립 단 간격 = n·s_v)
- FT02 메시지도 같은 이름을 씀

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-26 17:39:23 +09:00
ypshimandClaude Haiku 5.5 0588ffe3f4 feat(rebar): B11·B12 수평간격을 배수 k 입력으로 (기본 k = 8, 방향은 문서 기준)
- 간격 = 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>
2026-10-26 17:34:51 +09:00
ypshimandClaude Haiku 5.5 48e6811600 feat(rebar): 확대기초 패널 규칙 값 표시 (상면·2단, B2·B6 디리, B9, 조립 단 수) 및 "규칙" 표기
- footingRuleValues: 패널 표시값을 계산 함수에서 직접 읽음 (새 공식 없음)
- B2·B6 디리 두 값, 조립 단 수(3단) 표시
- "(고정)"은 Δ₂ 100에만 사용, 4s·2s·상면 2s는 "(규칙)"으로 표기
- 테스트: 기본값 P1에서 250 · 100 · 1723 · 500·250 · 500·3단 @400

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-26 17:23:57 +09:00
ypshimandClaude Haiku 5.5 ddd6d55a72 feat(rebar): 격자 실간격을 교각축(B1–B4·B9)과 교각축 직각(B5–B8·B11·B12)으로 나눠 입력
- 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>
2026-10-26 17:10:31 +09:00
ypshimandClaude Haiku 5.5 5a20a18185 feat(rebar): 확대기초 배근 입력 8개 (피복 3·여유·격자 s·s_v·e_top·n), FT01·FT02 검사
- 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>
2026-10-26 16:59:08 +09:00
ypshimandClaude Haiku 5.5 550b508e7a feat(rebar): 단면 삽도 순서 P3·P4·P5, 치수선·규격 표기·커플러 지시선
- 단면 순서와 문자를 삽도에 맞춤: 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>
2026-10-26 16:54:27 +09:00
ypshimandClaude Haiku 5.5 caadc2fe77 fix(rebar): 단면 A·B·C를 한 행에 배치
- 기둥 패널의 단면 세 그림을 flex 한 행(nowrap)으로 두고, 좁은 화면에서는 가로 스크롤

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-26 16:44:05 +09:00
ypshimandClaude Haiku 5.5 baaec9d7e2 feat(rebar): 기둥 단면 A·B·C (각 그룹 첫 단, 커플러 θ+Δθ/2, P6 현 4본)
- 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>
2026-10-26 16:42:50 +09:00
ypshimandClaude Haiku 5.5 c82aff3713 feat(rebar): 기둥 정면 삽도 (P 번호, 단부 배치구간·기초 안 깊이 계산값 표시)
- 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>
2026-10-26 16:37:36 +09:00
ypshimandClaude Haiku 5.5 f619b9ea20 feat(rebar): 기둥 배근 입력 8개 (피복·띠철근 K3/K5/K4·K6·커플러·Δz·n_div), CL01·CL02 검사
- core/rebar/column-settings.ts: 입력 정의, 기본값(기둥철근 (1).md), 범위(제안), 검사 (CL01 범위, CL02 n_div 홀수)
- 주철근 하단 갈고리는 고정 (입력 없음)
- 기둥 탭 패널: 적용 버튼으로 반영, 계산 결과(K2 내측 r, 주철근·커플러 수량) 표시
- P1·P2 등분 수, P3·P5·P4·P6 간격, 커플러 간격·상승을 철근표 간격·비고와 근거(기본값/입력)에 연동
- 3D 주철근 개수도 n_div 입력을 사용 (COLUMN_P1 하드코딩 제거)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-26 16:22:47 +09:00
ypshimandClaude Haiku 5.5 496e0ea4e5 feat(rebar): 상면 주철근(C1–C6) 이음 무시/반영, 위치 기둥 중심/단부
- 기본 '이음 무시' (사양 결정). '반영'이면 정척(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>
2026-10-26 16:14:23 +09:00
ypshimandClaude Haiku 5.5 d2c5f90092 fix(rebar): 상면 단 가로 간격을 d(H29, 28.6 mm)로 수정
- 단마다 양끝이 안으로 들어가는 양을 2d에서 d로 변경
- 상면 단 길이 12744 / 12686.8 / 12629.6 (기존 12744 / 12629.6 / 12515.2)
- 3D 상면 주철근의 굽힘 시작점도 같은 값을 쓴다

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
2026-10-26 15:45:51 +09:00
ypshimandClaude Haiku 5.5 2acb427bab feat(rebar): 상면 주철근 단 간격(세로) 입력 100 mm, 가로는 2d 고정
- 세로 단 간격은 입력(기본 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>
2026-10-26 15:42:40 +09:00
ypshimandClaude Haiku 5.5 9c93a6aa01 feat(rebar): 코핑 배근 입력 12개 · CP01·CP02 검사 · 적용 버튼
- 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>
2026-10-26 15:26:20 +09:00
ypshimandClaude Haiku 5.5 ec402e22d7 feat(rebar): 단면·폐합 at two fixed stations side by side (단부 0.3 m, first column centre)
- 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>
2026-10-26 15:15:47 +09:00
ypshimandClaude Haiku 5.5 d5bf02e36b feat(rebar): 단면·폐합 section with the top-row and side-row chains and bar-group bubbles
- 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>
2026-10-26 15:05:37 +09:00
ypshimandClaude Haiku 5.5 a18a15db7b feat(rebar): 정면 dimension chains computed from the 3D bar positions (기둥 중심 = 0)
- 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>
2026-10-26 14:54:45 +09:00
ypshimandClaude Haiku 5.5 57f7c148ec feat(rebar): coping front view and 단면·폐합 section from the 3D bar records (승인 2026-10-26)
- 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>
2026-10-26 14:27:03 +09:00
ypshimandClaude Haiku 5.5 dd590b899c feat(rebar): plan view of the block rebar with the 단면/평면 switch (승인 2026-10-26)
- 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>
2026-10-26 14:18:37 +09:00
ypshimandClaude Haiku 5.5 521979b437 fix(rebar): cut the C–C section through the selected pair only
- 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>
2026-10-26 14:14:31 +09:00
ypshimandClaude Haiku 5.5 38bb26eda5 feat(rebar): block rebar settings card and C–C section on the ③ bearing tab
- 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>
2026-10-26 14:12:36 +09:00
ypshimandClaude Haiku 5.5 2f67efd449 fix(bearing): C4 and C5 are the 교각축 distances from the bearing to the block edges (승인 2026-10-26)
- 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>
2026-10-26 13:17:50 +09:00
ypshimandClaude Haiku 5.5 0b847e7547 feat(bearing): section and solplate detail drawings with the drawing values overlaid (승인 2026-10-26)
- 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>
2026-10-26 12:33:05 +09:00
ypshimandClaude Haiku 5.5 0708aa1354 fix(bearing): show only the outer block margins as C4 and C5
- 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>
2026-10-26 12:30:21 +09:00
ypshimandClaude Haiku 5.5 b3a62850ab feat(bearing): plan of a pair with block outline and overlaid drawing values (승인 2026-10-26)
- 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>
2026-10-26 12:19:14 +09:00
ypshimandClaude Haiku 5.5 2af5cfb144 feat(bearing): 일체 choice gated by the pair eccentricity rule (승인 2026-10-26)
- 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>
2026-10-26 11:56:26 +09:00
ypshimandClaude Haiku 5.5 cd18665d6a feat(bearing): model C4/C5 and the front–back pair eccentricity (승인 2026-10-26)
- 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>
2026-10-26 11:49:27 +09:00
ypshimandClaude Haiku 5.5 d77f2bfd17 feat(bearing): 받침 종류·용량 as a text input (default 탄성받침)
- 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>
2026-10-26 11:39:28 +09:00
ypshimandClaude Haiku 5.5 b6e7f36091 feat(ground): 해상 selectable with MSL levels, 고조위·저조위, and checks
- 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>
2026-10-26 11:11:31 +09:00
ypshimandClaude Haiku 5.5 26a5aff517 feat(ground): 하상 selectable; 설계홍수위 and 세굴 깊이 for 하상
- 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>
2026-10-26 11:06:10 +09:00
ypshimandClaude Haiku 5.5 7b5517e312 feat(ground): N value per layer row (text, blow count or 타수/관입량 mm)
- 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>
2026-10-26 10:48:37 +09:00
ypshimandClaude Haiku 5.5 7dd59dfc6c fix(ground): one 위치 control on the card and clearer layer labels
- 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>
2026-10-26 10:41:21 +09:00
ypshimandClaude Haiku 5.5 325c841733 feat(ground): pile-tip embedment check and soil layers from the ground model
- 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>
2026-10-26 10:35:41 +09:00