Sprint 31/32 — 헌치 + 속성 패널 카테고리 재정리

Sprint 31: Haunch (데크 헌치).
- SceneParams.haunch_depth (0~300mm, step 10mm).
- 거더 상부와 데크 soffit 사이 600mm×haunch_d×span 블록을 경간별·거더별
  자동 배치. COL_DECK 로 색상 통일.
- 데크 위치: girder_h + slab_thickness → girder_h + haunch_depth + slab_thickness.
  6군데(build_bridge_scene + build_selectable_scene 의 데크·신축이음·방호벽)
  일괄 수정.
- camber + skew 동시 적용.
- UI: "헌치 (mm)" 슬라이더.

Sprint 32: 속성 패널 재정리.
- 누적 11개 슬라이더가 한 섹션에 섞여 혼잡 → 5개 CollapsingHeader 분리:
  · 상부구조 (경간·거더 관련 5항목)
  · 바닥판 (슬래브·헌치)
  · 선형·기하 (경사각·솟음)
  · 하부구조 (교각 형식)
  · 추가 부재 (가로보·신축이음·격벽 — 기존 유지)
  · 표시 (선형·투영 — 기존 유지)
- ps!($ui, ...) 매크로 hygiene 수정: ui 명시적 매개변수화로 macro_rules
  기본 hygiene 의 외부 캡처 문제 회피.
- "경간" 라벨 중복(span_m vs span_count) 해소: "경간 길이"/"경간 수".

ProjectFile: haunch_depth 필드 추가 (default 0.0).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
minsung
2026-04-15 15:19:00 +09:00
parent 0013182835
commit 94ce89093f
4 changed files with 113 additions and 32 deletions

View File

@@ -12,6 +12,10 @@
## 타임라인
### 2026-04-15 (계속)
- code — Sprint 31~32: 헌치 + UI 재정리.
- Sprint 31: 데크 헌치 (Haunch). `SceneParams.haunch_depth` (0~300mm) 추가. 거더 상부와 데크 soffit 사이 600mm 폭 × haunch_d 높이 블록을 거더마다 배치. 데크 위치는 `girder_h + haunch_depth + slab_thickness` 로 이동 (기존 6개 참조 일괄 수정). camber + skew 동시 적용.
- Sprint 32: 속성 패널 카테고리 재정리 (누적 11개 슬라이더 섞여 혼잡). 5개 CollapsingHeader 로 분리: 상부구조·바닥판·선형/기하·하부구조·추가부재·표시. `ps!($ui, ...)` 매크로 hygiene 수정(ui 명시적 매개변수화).
- ProjectFile: haunch_depth 필드.
- code — Sprint 29~30: 거더교 MVP 추가 확장.
- Sprint 29: 지점부 격벽 (Diaphragm). `SceneParams.show_diaphragms` 토글(default true). 모든 지점(교대·교각) 에서 인접 거더 사이 RC 벽 자동 배치. 두께 300mm(span 방향), 높이 = girder_h, 폭 = spacing - 250mm(web clearance). skew 회전 동시 적용. `build_bridge_scene` + `build_selectable_scene` 양쪽.
- Sprint 30: 솟음 (Camber). `SceneParams.camber_mid_mm`(0~200mm) 추가. `apply_camber_mesh()` 헬퍼 — 경간 [z0, z1] 내 포물선 Y 오프셋 `4·mid·u·(span-u)/span²`. 거더·데크에 경간마다 독립 적용. 지점에서는 0. UI "솟음(mm)" 슬라이더.