Files
Aislo/docs/raw/plans/2026-07-24_plan_B05_layout_refinements.md
T
eomsangdonandClaude Opus 5 eb30b774f8 chore(docs): docs 폴더 git 추적 전환 · PLAN·OWNERS 최상위 이관
- `docs/` 를 .gitignore 에서 빼 git 추적 대상으로 전환 (위키·완료 이력·검증 기록)
- `docs/raw/PLAN.md` · `docs/raw/OWNERS.md` 를 저장소 최상위로 이동 후 .gitignore 에 등록
  — 창끼리 공유하되 저장소에는 안 올리는 장부
- 살아 있는 경로 참조 7개 파일 정정 (아카이브 107건은 그때 사실이라 그대로 둠)
- graphify 날짜별 산출물(`docs/wiki/graphify-out/20*/`) 제외 — `graphify update` 가 다시 만듦

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-09 18:19:07 +09:00

3.9 KiB

완료 계획서: B05 레이아웃 정비 및 후속 과제 (2026-07-24 이관)

1. B05 사이드바 제목/레이아웃 정비 (2026-07-24)

기획+코딩 동시. 라벨 변경 + '공사 시작점' 컨테이너 2열×2행.

  • 워크플로 상단 제목 "노선 설계""종단 설계" (_UI_Page.ts:517).
  • 측점·횡단 옵션측점 및 샘플링 설정 (locale B05_Route_Group_SectionOptions).
  • 계획선(시공계획고) 설계종단 설계 기준 (_UI_Panel.ts).
  • 이어 공사 시작 기준공사 시작점 (_UI_Panel.ts).
  • 공사 시작점 컨테이너 내부를 2열×2행(1행 항목명, 2행 값 입력 / 1열 시작 측점, 2열 시작 누가거리)로. 라벨을 시작 측점·시작 누가거리로, 2열 그리드로 배치. (_UI_Panel.ts + _UI_Style.css)
  • 비정규 측점 (구조물)구조물 배치 (_UI_IrregularStations.ts).

2. B05 후속 2 (2026-07-24) — 캐럿/하이라이트 통일/시작측점

기획+코딩 동시.

  • 1. 접기 캐럿 크게: 공용 .ui-collapsible__title::after 화살표를 레이아웃 허용 범위 내 최대 크기로. → ui_template_theme.css.
  • 2. 선택 하이라이트를 오버레이 방식으로 통일: 규칙 측점 선택도 비정규 측점처럼 값 열 오버레이로 표기(셀 배경색 방식 폐기). buildIrregularColumn을 chainage+centerX 받는 공용 buildSelectedColumn으로 일반화해 규칙/비정규 공용. 종점은 셀이 우측 이동됐을 수 있으니 규칙 측점은 centers[index](이동 반영), 비정규는 x(chainage) 사용. → B05_wf2_Route_UI_Profile_Table.ts, _UI_Style.css.
  • 3. 공사 시작 측점/누가거리 오프셋 적용: 시작 측점(측점 표현 AAA+BB.B 중 AAA 정수만) + 누가거리 시작점. 기본값 측점 0·누가거리 0. 이 오프셋으로 B05 테이블·그래프의 측점 라벨(+시작측점)·누가거리(+시작누가거리) 표시를 이동(내부 chainage는 0기준 유지, 표시만 변환). → B05_wf2_Route_UI_Panel.ts(신규 컨테이너·getter), _UI_Page.ts(오프셋 전달), _UI_Profile_Panel.ts·_UI_Profile_Table.ts(표시 변환), B06_..._UI_Longitudinal.ts(그래프 측점 라벨 오프셋).

3. B05/B06/B07 후속 (2026-07-24)

이번 턴: 기획+코딩 동시. 정적 검사(tsc/py_compile/prettier).

  • A. 규칙 측점도 선택 시 테이블 하이라이트: 규칙 측점을 선택하면 그 측점의 테이블 열(값 셀들)에 같은 하이라이트를 준다. → B05_wf2_Route_UI_Profile_Table.ts(선택된 규칙 측점 x에 하이라이트 스트립), _UI_Style.css.
  • B. (#2) 비정규 측점 구조물 → B06 횡단도 카드에 표시: 확정 시 백엔드가 이미 structure를 횡단 데이터에 실음. B06 카드 헤더의 kind 라벨(일반측점/BP/EP) 좌측에 구조물 텍스트를 표기. → B06_wf3_ProfileCross_UI_Cross_View.ts, _UI_Style.css.
  • C. (#3) 충돌 시 규칙 측점 우선 + 구조물 유지: 백엔드 엔진에서 비정규 chainage가 규칙 격자와 겹치면 kind는 regular 우선(현재는 irregular)으로 하되 structure는 그대로 부착. 비격자 비정규만 kind="irregular". B06 표시는 B가 처리(구조물은 kind 라벨 좌측). → B05_wf2_Route_Engine_Sections_Core.py(원 규칙 chainage 집합으로 충돌 판정).
  • D. (#4) 컨테이너 접기 트리거를 제목 전체로 확대 + B07 재활용: 제목 행 전체가 클릭 영역이 되게 하고, 공용 collapsible 유틸/CSS로 만들어 B05·B07에 적용. 템플릿 상이 시 B05가 우선(제목+본문 접힘, 캐럿 표시). B07은 .b07-drawing-group(h3+버튼들)에 적용. → 신규 공용 ui_template/ui_template_collapsible.ts + 공용 CSS(ui_template_theme.css), B05_wf2_Route_UI_Panel.ts·_UI_Style.css(기존 개별 구현 대체), B07_..._UI_Page.ts·_UI_Style.css.