- CLAUDE.md: 프로젝트 전체 가이드 및 워크플로우 정의 - CONSIDERATIONS.md: 8개 영역 고려사항 분석 (기술, 품질, 배포, UX) - PROGRESS.md: 진행 상황 추적 및 체크리스트 - PLAN.md: 단계 5~9 상세 계획 및 에이전트 역할 정의 - 메모리: 프로젝트 정보 저장 다음: 단계 5 (에이전트/커맨드/스킬/훅 아이디어 제안)
144 lines
7.0 KiB
Markdown
144 lines
7.0 KiB
Markdown
# 다음 세션 프롬프트 — 교각(Pier) 하나로 방법론 실증
|
||
|
||
> 그대로 복사해 붙이면 된다. 아래 `---` 부터가 프롬프트다.
|
||
|
||
---
|
||
|
||
# 교각(Pier) 한 부재로 방법론 실증
|
||
|
||
## 왜 부재를 쪼개나
|
||
|
||
지난 세션에 교량 도면 7장으로 한꺼번에 갔다가 **뷰 상자를 두 번 잘못 잡았다.**
|
||
한 시트에 날짜가 다른 작업본이 겹쳐 있는 걸 못 보고 두 벌을 섞어 뽑았고,
|
||
교대라고 부른 것이 실은 옆 도형의 날개벽이었다. **폐곡선도 치수도 그럴듯해서
|
||
숫자로는 안 걸렸다.**
|
||
|
||
이번엔 **교각 하나만** 한다. 부재 하나를 끝까지 밀어 방법론의 어느 절이
|
||
그 부재에 대해 참인지 거짓인지를 확정하는 것이 목적이다. 모델 완성이 아니다.
|
||
|
||
## 먼저 읽어라 (순서대로)
|
||
|
||
1. `CLAUDE.md` — 경계 · 작업 순서 · 함정표(마지막 7행이 지난 세션 것)
|
||
2. `docs/2d-3d-conversion.md` — **교훈 #29~#33 을 반드시 읽어라.** 지난 세션에
|
||
내가 밟은 것들이다
|
||
3. `docs/methodology.html` — **11.0.4 · 11.0.5** 가 교량 실증 결과다
|
||
4. `src/drawings/bridge-end.mjs` — 지난 세션 산출물. 교각을 이미 세워봤다
|
||
(두부 2,244×1,334 · 기둥 1,586×3,904 · 확대기초 5,081×1,334)
|
||
|
||
## 대상
|
||
|
||
`drawings-src/` 의 **교각 도면**.
|
||
- 새 DWG 가 들어와 있으면 그것을 쓴다
|
||
- 없으면 기존 7장 중 교각이 그려진 것 (`교량시종점` 의 2지간 도형,
|
||
`C-BRDG-PIER` 레이어를 가진 `교량폭원` · `횡단경사`)
|
||
|
||
**어느 것을 쓰는지 먼저 보고해라.**
|
||
|
||
## 절대 규칙 (지난 세션에 어긴 것 포함)
|
||
|
||
- `src/core/*` · `src/ir.mjs` 에 도면 고유값 금지. 레이어명 · 제목 · 좌표 · **단위** ·
|
||
**축척**은 전부 `src/drawings/<이름>.mjs`
|
||
- **코어 수정이 필요해 보이면 먼저 보고해라.** 그게 방법론의 구멍이다
|
||
- 못 찾거나 여러 개면 예외를 던져라. 자동 선택 금지
|
||
- 손으로 읽은 수를 코드에 적지 마라. 도면에서 집고 **다른 값과 대조**해라
|
||
- **그림을 먼저 봐라.** 뷰 상자를 잡기 전에 반드시:
|
||
① 시트 전체 캡처 → 도형이 몇 벌인지, 겹치는지
|
||
② 도형 하나만 캡처 → 무엇이 들어 있는지 눈으로 확인
|
||
③ 그 다음에 상자
|
||
**이 순서를 건너뛰면 지난 세션과 같은 실수가 난다**
|
||
- 캡처는 `src/capture.mjs` 를 써라 (`--crop`, `--scale`, `--png`).
|
||
프로젝트 격자와 사이드카가 같이 나온다. 즉석 렌더를 던지지 마라
|
||
|
||
## 1단계 — 도면 파악 (여기서 멈추고 보고)
|
||
|
||
1. **시트 전수 캡처.** 도형이 몇 벌인가. 날짜 도장이 몇 개이고 **작업본이
|
||
겹쳐 있는가** (교훈 #29)
|
||
2. **교각이 그려진 도형을 전부 나열**하고 각각 무엇을 주는지:
|
||
- 종단면(측면) / 횡단면 / 평면 중 무엇인가
|
||
- 두부 · 기둥 · 확대기초 · 말뚝 중 무엇이 부재로 그려졌나
|
||
- 확대 상세가 섞여 있나 (축척이 다르다 — 교훈 #31)
|
||
3. **단위와 축척.** `DIMENSION.actualMeasurement` ↔ 치수 글자로 `unitMm` 확정.
|
||
치수 글자가 없으면 **크기를 아는 표준 부재**로 축척을 되찾아라 (교훈 #30).
|
||
두 값 이상으로 교차검증할 것
|
||
4. **표기 치수가 숫자인가 기호인가** 세라. 기호뿐이면 그 도면 안에는 대조
|
||
상대가 없다는 뜻일 뿐 — 다른 도면·표준 치수는 여전히 상대가 된다
|
||
|
||
## 2단계 — 교각 하나 세우기 (보고 후 진행)
|
||
|
||
**부재를 하나씩** 올려라. 한 번에 다 넣지 말 것.
|
||
|
||
```
|
||
1. 기둥 가장 단순한 것부터. 폐곡선 → 압출 → 부피 대조
|
||
2. 두부 기둥과 맞닿는 자리 확인
|
||
3. 확대기초
|
||
4. 말뚝 원기둥. 위치·지름을 도면에서 어떻게 얻는가 (교훈 #33)
|
||
5. 받침 두부 위. 확대 상세와 섞이지 않는지
|
||
```
|
||
|
||
각 부재마다 **게이트를 다 통과한 뒤** 다음으로 간다.
|
||
`--loops` → `gaps` → `build` → `measure --ir` 이 0.0000 인지.
|
||
|
||
## 3단계 — 이 부재에서 방법론이 어디까지 참인가
|
||
|
||
교각에 대해 **명시적으로 판정**해라. 「해봤다」가 아니라 「참/거짓/해당없음」으로.
|
||
|
||
| 방법론 주장 | 교각에서 |
|
||
|---|---|
|
||
| 2.2 표고 기준은 전 뷰 공통 | ? |
|
||
| 3.4 제목으로 뷰를 가른다 | ? |
|
||
| 5.2 연산 결정 트리 | 교각에 필요한 연산이 트리에 있나 |
|
||
| 11.1 기준 체인 (받침 → 교각 로컬) | **여기서 처음 검증 가능하다.** 하부공 도면이 받침 좌표·표고로 교각을 잡나 |
|
||
| 11.2 revolve 필요 | 원형 교각·두부가 있나 |
|
||
| 11.2 임의축 cylinder | 경사 말뚝이 있나 |
|
||
|
||
## 알려진 구멍 (지난 세션에 찾았고 아직 안 메웠다)
|
||
|
||
- **`pick` 이 선을 못 집는다.** 말뚝 위치는 `CS-CNTL` 중심선인데 집을 수단이
|
||
없어 스크립트로 재서 설정에 적었다. `circles()` 처럼 `centerlines()` 가 필요하다.
|
||
교각에서 또 필요해지면 **그때 코어에 넣자고 보고**해라
|
||
- 말뚝 **폭방향 배치**와 길이를 주는 도면이 없었다. 교각 도면에 평면이 있으면
|
||
거기서 나올 것이다 — **있는지 먼저 확인**해라
|
||
- 개별 거더 치수 없음 (거더배치는 위상만 준다)
|
||
|
||
## 지난 세션에 코어를 이만큼 고쳤다 (되돌리지 마라)
|
||
|
||
```
|
||
C1 cfg.unitMm DWG 모델단위가 도면군마다 다르다
|
||
C2 groupByBox 제목 없는/중복인 도면의 뷰 영역
|
||
C3 datum.mode:'none' 공통 기준선이 없는 도면
|
||
C4 toSegments entityFilter 레이어 아닌 필터 (색·선종)
|
||
C5 viewBoxes[뷰].unitMm 도형별 축척
|
||
C6 buildLoops 분할 뒤 중복 제거 겹치는 동일선상 선분
|
||
C7 rules[].needs 규칙 적용 범위
|
||
C8 findLevelDatum 라벨 무리 검사 예외 없이 틀린 답을 막는다
|
||
C9 pick.loops(w,h,tol) 같은 부재 여러 벌
|
||
C10 volume.mjs 해석 부피 격자 거짓 경보 제거
|
||
C11 buildLoops bbox collinear 제거 뒤로 (매달린 변)
|
||
capture.mjs 단위·격자·사이드카
|
||
probe.mjs → projectViews 경유
|
||
render.mjs --part 정규식 · --clip 걸침 허용
|
||
```
|
||
|
||
## 보고 형식 (매 단계)
|
||
|
||
```
|
||
쓴 도면·도형: 무엇을, 왜 그것을
|
||
통과한 게이트:
|
||
막힌 곳: 게이트 번호 + 증상 + 원인
|
||
설정으로 해결: 무엇을
|
||
코드가 필요: 무엇이 왜 (← 방법론의 구멍)
|
||
방법론에서 틀린 것: 어느 절의 어느 주장이
|
||
새 함정: 증상 → 원인 → 대응
|
||
```
|
||
|
||
## 마지막
|
||
|
||
1. `docs/2d-3d-conversion.md` 에 교훈 추가 (번호는 #34 부터)
|
||
2. `docs/methodology.html`
|
||
- 11장에 **교각 절** 신설 — 부재 단위 실증이 무엇을 밝혔는지
|
||
- 3단계 판정표를 그대로 싣는다
|
||
- 배지를 `가설` → `검증`/`부분` 으로 올리되 **틀린 주장은 지우지 말고 왜
|
||
틀렸는지 적어라**
|
||
3. `node src/ui.mjs <도면> --port 7333` 으로 파라메트릭 UI 까지 확인
|
||
(`dims()` 를 만들어야 치수 상자가 나온다)
|