ypshimandClaude Opus 5.5 87b445965b feat(abut): 교대 솔플레이트도 2026-11-06 결정으로 (짝 받침 S · T 하나 · 거더 하면 고정)
교대 받침 카드(spec_abut §5, QA-15)를 교각과 같은 계산(sole-plate.ts)으로 바꾸고 C안 모듈을 정리한다.
- S: 짝 받침(A1 ↔ P1 전열, A2 ↔ Pn) 계산, 없으면 교대 종단경사 i(엑셀 Abut). 직접 수정 가능
- L = A + 100, W = B + 100 (A × B 기본 700 × 640, P1 전열 값 가정), 받침 1열이라 T 하나
- h3 기본값 = 받침 시트 받침높이 − T_ref (A1 275 − 30 = 245): 엑셀 받침높이의 거더 하면을 지킴.
  시안은 P1의 h3 181을 가정했으나 교대 시트에 받침높이가 있어 이렇게 둔다 (입력으로 바꿀 수 있음)
- 블럭 콘크리트 = 블럭 높이 − 패드 − (T − T_ref), E는 그대로
- 입력 칸: h3 · T_ref · T_min · 여유 · A · B · T · S (h3·T·S는 비우면 자동). C안 값(lengthMm 등)은 무시
- A1 검증: S −1.908 … −1.902 % (짝 P1 전열), L 800 · W 740 · T 30 · T1 38 · T2 22, E 400
- src/core/solplate-rule.ts(C안)와 그 테스트 삭제, 솔플레이트 기하 테스트는 새 계획으로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-06 14:52:27 +09:00
2026-11-02 15:46:42 +09:00
2026-11-02 15:46:42 +09:00

PIERZAINER · PIER & ABUT

교각·교대 Excel을 읽어 형상과 철근배근을 생성하고 원도면 기반 지반면·위성사진·2D 지도를 함께 표시하는 프로젝트입니다.

현재 작업 상태 (2026-11-05 확인)

  • 현재 로컬 작업 브랜치는 master이며 제품 코드 기준 커밋은 91c4a4a입니다. 아래 11월 2일 복구 기록은 당시 이력입니다.
  • 교대 ② 형상계획 카드 6개와 ③ 철근배근 6개 부재(받침블럭·벽체·흉벽/브라켓·확대기초·날개벽·접속슬래브)가 구현되어 있습니다.
  • A1 표본으로 ③ 입력 재계산·삽도/3D 표시·철근 선택·파일 다운로드·새 페이지 저장 복원을 검증했습니다. 설계 미결 사항과 다른 입력의 동작은 별도 확인 대상입니다.
  • 최신 진행 기록은 ../../context-migration/컨텍스트_2026-11-03_교각_교대_진행상황.md, 남은 항목은 ../../context-migration/OPEN_미해결목록.md에서 관리합니다.
  • 로컬 origin/master 추적 정보 대비 89커밋 앞선 상태였습니다. 실제 원격은 조회하지 않았습니다. 브랜치 전환이나 이력 변경 전에 현재 상태를 확인하세요.

실행

npm ci
npm run dev -- --host 127.0.0.1 --port 5173

브라우저에서 http://127.0.0.1:5173/ 을 엽니다. 랜딩페이지의 Excel 가져오기와 실제 교량 샘플 선택을 사용합니다.

유지하는 폴더

  • src/, index.html: 실제 교각 프로그램
  • 랜딩페이지/: 랜딩 화면과 지도 포함 통합 샘플 12개
  • pierzainer_ground/: 지반 생성 프로그램, 원본 자료, 최종 지반 JSON 및 재현에 필요한 데이터
  • 도면추출_연동패키지_20261102/: 도면 추출 프로그램과 교각 샘플 Excel
  • public/: 프로그램 리소스 및 기본 Excel 샘플
  • tests/, scripts/, verify/: 자동 검사와 유지보수 스크립트

node_modules/, dist/, .verify/, 지반 cache/는 실행·검증 중 재생성되는 파일이며 Git에 추가하지 않습니다.

검증

npm test -- --maxWorkers=2
npm run build

A1 화면 검증 스크립트는 scripts/verify-abut-workflow.cjs입니다. 개발 서버와 별도 프로필 Chrome의 로컬 CDP 포트(기본 9444)가 필요합니다.

현장타설 실배근의 현행 UI 검증은 node scripts/verify-cast-rebar.cjs를 사용합니다. Windows Chrome 사용 시 Windows Node로 실행합니다. 샘플 Excel에서 9개 교각·기초 조합을 생성하고 실제 주철근/횡철근/커플러 행·삽도·입력 재생성·불일치 경고·재료표·파일 저장/새 페이지 복원·헤더 3개 폭을 검사합니다. 결과는 .verify/cast-rebar-20261106/에 저장합니다. verify-unified-input.cjs는 실배근 연결 전 통합 입력 단계의 검증이고, verify-cast-input.cjs와 verify-cast-detail.cjs는 통합 전 분리 카드 선택자를 사용한 과거 검증 스크립트입니다.

node scripts/verify-abut-workflow.cjs <input.xlsx> <output-directory> <download-directory>

Windows Chrome을 쓰면 Windows Node로 실행하고 입력·출력 경로도 Windows 경로 또는 WSL UNC 경로로 전달합니다. 결과 JSON·화면 캡처·SVG·프로젝트 표본은 .verify/abut-workflow-20261105/에 보관했습니다. report.json의 실행 결과와 범위를 확인하세요. 단순 재열기 검사는 같은 인자 뒤에 --resume을 붙일 수 있습니다.

2026-11-02 혼합 파일 복구 (당시 기록)

혼합 전 Pierzainer 커밋 d6735a6에서 로컬 브랜치 recovery/pierzainer-20261102를 만들었습니다. π형 Excel 인식, 전·후열 받침 수 불일치 허용, 랜딩페이지 샘플 연결을 포함합니다. 기존 ITAM 브랜치와 원격 기록은 변경하지 않았습니다.

당시 복구 기록에는 분리 파일을 상위 _recovery/20261102_mixed_projects/에 보관하고, 당시 master가 ITAM 코드였다고 적혀 있습니다. 2026-11-05 현재 로컬 master는 Pierzainer 코드(91c4a4a)이므로 과거 안내에 따라 복구 브랜치로 전환하지 마세요. 당시 복구 보관 경로의 현존 여부는 이번 작업에서 재확인하지 않았습니다. 이번 검증·기록 정리에서도 원격 push와 브랜치 전환은 수행하지 않았습니다.

S
Description
계획 모델링 성과품
Readme
459 MiB
0 Stars 1 Watchers 0 Forks
Languages
Python 63.8%
TypeScript 11.9%
C 11.2%
Tcl 9.6%
OMNeT++ MSG 0.8%
Other 2.5%