diff --git a/public/BLOCK8_작업인수인계.md b/public/BLOCK8_작업인수인계.md new file mode 100644 index 0000000..6de7e67 --- /dev/null +++ b/public/BLOCK8_작업인수인계.md @@ -0,0 +1,78 @@ +# 광터지하차도 BLOCK8 작업 인수인계 + +- 작성일: 2026-10-20 +- 기준 커밋: `e473a7c` — 평면도와 상부평면도 모델을 하나로 통합 +- 프로젝트: React + Vite 기반 도면 검토용 웹 3D 모델 + +## 1. 작업 개요 + +BLOCK8 DXF 도면을 분석해 종단면 및 단면 A-A/B-B의 구조 윤곽을 연결한 3D 검토 모델을 만들었습니다. 평면도와 상부평면도에 보이는 중심선은 같은 구조물의 표현으로 해석하여 모델은 하나만 생성했습니다. 도면 뷰에 배치된 두 중심선 표현 사이의 CAD 좌표 차 35.000m는 실제 구조물 간격으로 사용하지 않았습니다. + +## 2. 현재 모델과 주요 값 + +- 모델 대상: BLOCK8 구조물 1개 +- 기준 측점: STA. 0K+319.010 ~ STA. 0K+338.990 +- 중심선 길이: 19.980m (도면 중심선 ARC와 양 끝 `CS-CONC-MAJR` 구조선 교점 사이 계산값) +- 단면 측점: A-A `0K+319.000`, B-B `0K+339.000` +- 중심 기준 EL: A-A 102.094m → B-B 101.517m +- 벽체 상단 EL: A-A 107.215m → B-B 107.857m +- 기초 하단 표기 EL: A-A 100.877m, B-B 100.392m +- 단면 폭 치수 합계: 20.300m +- 실제 구조선 좌표에서 측정한 외곽 폭: 20.500m +- 모델 객체: 총 154개 (단면 구조선 114개 + 블록 내부 윤곽 40개) +- 단면 구조선: `CS-CONC-MAJR` 108개, `CS-CONC-MINR` 6개 + +## 3. 분석 근거와 남은 확인 사항 + +DXF에는 단위가 지정되어 있지 않습니다 (`$INSUNITS=0`). 단면 좌표 차 20,300이 표기 치수 20.300m와 일치하는 점, 중심선 길이 계산값 19.980m가 측점 차와 일치하는 점을 이용해 모델 생성용 좌표를 mm로 해석했습니다. + +단면의 폭 치수(20.300m)와 외곽 구조선 폭(20.500m)이 0.200m 차이 납니다. 구조선 최저점도 표기된 기초 하단 EL보다 0.100m 낮습니다. 구조도와 기초 상세를 확인하기 전까지 이 선들을 원 도면 그대로 보존했으며 임의로 삭제하거나 치수를 맞추지 않았습니다. + +측구 상세와 본체의 실제 접합 위치, 재료 및 닫힌 체적 경계, 원본 DWG의 제원·특기사항은 추가 대조가 필요합니다. 화면은 도면 구조선을 연결한 열린 표면 검토 모델이며 제작용 상세 모델이나 실사 렌더링이 아닙니다. + +## 4. 주요 파일 + +- `public/drawings/광터지하차도_BLOCK8.dxf` — 등록된 원본 DXF +- `docs/도면분석.md` 및 `public/analysis/도면분석.md` — 도면 판독 및 값 근거 +- `public/작업기록.txt` — 초기화 이후 작업 이력 +- `src/model/block8.json` — 웹 뷰어가 읽는 모델 데이터 +- `scripts/extract_block8_model.py` — DXF에서 모델 데이터를 다시 추출 +- `scripts/render_block8_preview.py` — SVG 미리보기 생성 +- `docs/BLOCK8_3D모델_미리보기.svg` — 모델 이미지 +- `src/App.jsx`, `src/ModelViewer.jsx` — 웹 화면과 조작 기능 + +## 5. 실행 및 확인 방법 + +프로젝트 폴더에서 다음 명령을 실행합니다. + +```bash +npm install +npm run dev +``` + +터미널에 표시된 로컬 주소를 브라우저에서 열면 모델을 확인할 수 있습니다. 마우스로 끌어 회전하고, 휠로 확대·축소합니다. `Shift`를 누르거나 마우스 오른쪽 버튼을 누른 채 끌면 화면을 이동합니다. 상단의 보기 버튼에서 전체·평면·정면·측면·A-A·B-B를 선택할 수 있습니다. + +변경 후 확인 명령: + +```bash +npm run build +npm run lint +python3 scripts/extract_block8_model.py +python3 scripts/render_block8_preview.py +``` + +## 6. 검증 기록 + +기준 커밋 시점에 모델 추출 결과는 중심선 1개, 길이 19.980m, 객체 154개였습니다. `npm run build`, `npm run lint`, `git diff --check`가 통과했습니다. 원본 DWG/PDF를 직접 열어 확인하는 검증은 수행하지 못했습니다. + +## 7. 커밋 이력 + +- `0adb717` 도면 기반 모델 작업지침 추가 +- `1783d1f` BLOCK8 도면 자료와 1차 분석 기록 추가 +- `62c7395` BLOCK8 윤곽 추출 한계와 추가 자료 기록 +- `e7d0250` BLOCK8 확인 구간 모델 도식 추가 +- `1986680` BLOCK8 기준 보기와 분석·작업 로그 화면 추가 +- `9d11b4e` BLOCK8 중심선과 단면 근거로 3D 모델 생성 +- `e473a7c` 평면도와 상부평면도 모델을 하나로 통합 + +원격 저장소에는 푸시하지 않은 로컬 커밋 기록입니다. diff --git a/src/App.jsx b/src/App.jsx index 39176c7..3713618 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -56,6 +56,7 @@ export default function App() {