원본 좌표와 브라우저 검증 결과 및 실행 수정 안내 기록

This commit is contained in:
김지영 committed 2026-10-20 11:03:43 +09:00
1 parent d01ef8b0e8
commit fac29cb010
17 files changed
+358 -17

No files matched your search

+125
View File
@@ -0,0 +1,125 @@
{
"status": "PASS",
"checks": [
{
"name": "3D 캔버스 생성",
"pass": true
},
{
"name": "원본 154 객체 표시",
"pass": true
},
{
"name": "버튼 존재: 평면",
"pass": true
},
{
"name": "버튼 존재: 정면",
"pass": true
},
{
"name": "버튼 존재: 측면",
"pass": true
},
{
"name": "버튼 존재: A-A",
"pass": true
},
{
"name": "버튼 존재: B-B",
"pass": true
},
{
"name": "버튼 존재: 전체",
"pass": true
},
{
"name": "버튼 존재: 모두 숨김",
"pass": true
},
{
"name": "전체 숨김 반영",
"pass": true
},
{
"name": "버튼 존재: 모두 표시",
"pass": true
},
{
"name": "반복선 제외한 전체 표시",
"pass": true
},
{
"name": "선택하면 원본 근거 표시",
"pass": true
},
{
"name": "버튼 존재: 선택한 윤곽 숨기기",
"pass": true
},
{
"name": "개별 숨김 반영",
"pass": true
},
{
"name": "버튼 존재: 3D OBJ ↓",
"pass": true
},
{
"name": "OBJ 내보내기 153개 객체",
"pass": true
},
{
"name": "OBJ 유효한 좌표",
"pass": true
},
{
"name": "OBJ 연결 삼각면 466개",
"pass": true
},
{
"name": "키보드 회전 반영",
"pass": true
},
{
"name": "휠 확대 반영",
"pass": true
},
{
"name": "윤곽 검색 빈 결과 표시",
"pass": true
},
{
"name": "버튼 존재: 도면",
"pass": true
},
{
"name": "도면 발췌 표시",
"pass": true
},
{
"name": "버튼 존재: 측구상세",
"pass": true
},
{
"name": "상세도 전환",
"pass": true
},
{
"name": "버튼 존재: 검증",
"pass": true
},
{
"name": "미검증 항목 구분",
"pass": true
},
{
"name": "버튼 존재: 렌더링 보기",
"pass": true
},
{
"name": "시각화 구분",
"pass": true
}
]
}
+6
View File
@@ -0,0 +1,6 @@
{
"viewport": 375,
"content": 375,
"body": 375,
"pass": true
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 225 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 237 KiB

+43
View File
@@ -0,0 +1,43 @@
# BLOCK7 모델 검증 보고 (2026-10-20)
## 결과와 적용 범위
원본 단면 구조선 114쌍과 좌우 공동구·상부 상세 40쌍을 각각 선택 가능한 154개 윤곽 객체로 만들었다. 사용자 허용에 따라 두 단면을 종단 경계 간격 19.980m로 직선 연결했다. 포장 반복선 60개는 원본 선으로 보존하고, 나머지 94개 객체의 연결 삼각면은 468개다. 실물 부재 개수나 확정 체적을 뜻하지 않는다.
모든 연결면은 `확인 필요`다. 실제 평면 중심선, 중간 곡률·단면, 중심 기준 EL은 적용하지 않았다. 원본 단면 STA 299.000/319.000은 보존하고 배치만 종단 구조 경계 299.010/318.990에 대응시켰다.
## 수행한 검사
| 검사 | 결과 | 근거 |
|---|---|---|
| 원본 두 단면 레이어 수 | A/B 각각 MAJR 108+MINR 6=114 | scripts/verify_model.py |
| 원본 선 번호와 모든 끝점 | 원본과 일치, 좌표 반올림 오차 0.000051mm 이하 | docs/좌표검증결과.txt |
| 상단 EL | 106.675 / 107.307, 종단·단면 표기 일치 | docs/도면분석.md 및 좌표 검산 |
| 경계 간격 | 318.990-299.010=19.980m | 두 단면 원본 좌표 보존 후 배치 검산 |
| 공동구·상부 상세 | 좌우 각각 LINE 18+ARC 2, 우측 반전 및 삽입 Y 반영 | DXF 블록과 추출 데이터 |
| 연결·OBJ | 468 삼각면 / 154 객체, 유효한 꼭짓점 참조, 숨김 반영 | scripts/verify_geometry.mjs |
| 웹 브라우저 동작 | Chrome 검사 30개 통과 (버튼 존재 확인 포함) | docs/browser-check-result.json |
| 시점·선택·숨김·검색 | 시점 6종, 전체·개별 숨김, 목록 선택 정보, 빈 검색 결과 확인 | 위 브라우저 검사 |
| 회전·확대 | 키보드 회전 및 휠 확대 후 실제 캔버스 변화 확인 | 위 브라우저 검사 |
| OBJ 다운로드 | 1개 숨긴 상태에서 153 객체/466면 내보내기 확인 | 위 브라우저 검사 |
| 도면·검증·렌더링 패널 | 도면 전환 및 미확정 항목/시각화 안내 확인 | 위 브라우저 검사 |
| 좁은 화면 | 390px 프레임의 내용 영역 375px에서 가로 넘침 없음 | docs/mobile-check-result.json |
| 빌드·정적 검사 | Vite 빌드 성공, oxlint 경고 0/오류 0 | 최종 명령 실행 |
| 화면 확인 | 기본·렌더링 화면 캡처와 배치 확인 | docs/screenshots/desktop.png, render.png, mobile.png |
## 미검증·생략·표현 차이
- 실제 평면 중심선·좌표·곡률 및 A/B 절단 위치 대응, 도로 중심 기준 EL은 미검증이다. 임의 방향각을 원본 중심선으로 사용하지 않았다.
- 원본 단면 자체 측점과 종단 경계가 양 끝 각각 10mm 차이 난다. 사용자가 허용한 연결 검토를 위해 대응시킨 것이며 원인 확인은 남았다.
- 단면 사이 모든 점은 직선 보간이다. 공동구·측구·상부 가는 상세도 같은 방식으로 연장한 확인 필요 형상이다.
- 포장 반복선·하부 외측 보조선의 재료·해칭 여부, 중복된 선·면과 체적 접합은 완전히 분류·검증하지 않았다. 선 기반 열린 표면이며 끝단을 임의로 막지 않는다.
- ARC는 반원당 36개 선분으로 표시한다. 원본 반지름 약 30mm에서 최대 현 오차는 약 0.029mm다.
- 측구 상세는 원본 발췌를 제공하지만 단면 측구와의 깊이·시종점 적용 대응은 미확정이다. 상세 치수로 단면 윤곽을 임의 교체하지 않았다.
- 원본 검토 SVG는 LINE·TEXT·공동구 LINE 발췌다. 전체 DXF의 모든 블록·해칭·기호·폴리라인·원호를 렌더링하지 않는다.
- 지반·되메우기·철근·재료·정착·이음 상세의 구간 적용은 생략했다. 근거 없는 별도 금속 난간은 추가하지 않았다.
- 렌더링은 CPU 기반 삼각면 깊이 정렬·단순 명암·투영 그림자이다. 고급 광학 재질·실사 표현·정밀 단면 절단 기능은 제공하지 않는다.
- 실제 터치 기기의 두 손가락 동작, 모든 브라우저·3D 프로그램의 OBJ 호환성, 마우스 드래그·면 선택의 수동 전수 검사는 수행하지 못했다. 목록 선택·키보드 회전·휠 확대·내보내기는 자동 검증했다.
## 다음에 확인할 자료
평면 중심선의 엔티티 또는 측점별 중심 좌표, A-A/B-B 절단 위치와 중심 EL, 측점 10mm 차이의 경계 기준, 중간 단면·측구 연장 범위를 확인하면 검토용 직선 연결을 실제 배치로 갱신할 수 있다. 수정 위치와 실행 방법은 README.md에 기록했다.
+10
View File
@@ -55,3 +55,13 @@
4. 포장 반복선, 하부·외측 보조선의 재료와 체적 경계 해석은 미검증이다. 닫힌 체적·수량 산출용 모델로 해석하지 않는다.
5. 측구 상세 S=1:30은 별도 검토 자료로 제공한다. 단면 측구와의 깊이·시종점 적용은 미확정이며 상세 치수로 단면을 임의 교체하지 않는다.
6. 철근, 지반, 되메우기, 이음 상세의 구간 적용, 재료·정착 상세는 모델링하지 않았다. 공동구 블록의 가는 상부 윤곽은 존재하는 그대로 보존하며 근거 없는 금속 난간을 추가하지 않는다.
## 사용자 확인 후 적용한 직선 연결 (2026-10-20)
사용자가 “검토용 직선 연결 허용”을 선택했다. 원본 단면의 횡방향·EL 좌표는 유지하고, A-A/B-B를 종단 구조 경계 299.010/318.990에 대응시켜 19.980m 직선 연결했다. 원본 단면의 STA 299.000/319.000 표기는 데이터에 별도 보존한다. 각 끝 10mm 차이를 실제 형상 검증 완료로 해석하지 않는다.
- 모델 X는 단면 횡방향, Y는 EL, Z는 종단 경계 기준 거리이다. 실제 평면 중심선·방향·곡률은 적용하지 않았다.
- 모든 연결면 상태는 `확인 필요`다. 화면 안내와 황토색 점선으로 표시한다. 기본/렌더링 보기 모두 같은 가정을 사용한다.
- 154개 대응 윤곽 객체 중 포장 반복선 60개는 단면 선으로만 보존한다. 나머지 94개 윤곽 객체로 468개 연결 삼각면을 만든다. 원호 분할 때문에 삼각면 수가 늘어난다. 이 수는 실물 부재 수가 아니다.
- 양 끝 단면을 임의 캡으로 채우지 않은 열린 표면 모델이다. 원본 중복선·내부선이 남아 있을 수 있으며 체적·수량 산출에 사용하지 않는다.
- 기본 보기는 연결면과 원본 단면 윤곽을 함께 표시한다. 렌더링은 단순 표면 명암·배경·투영 그림자를 적용한 도면 검토용 시각화이다.
+6
View File
@@ -0,0 +1,6 @@
A: 114개 선 HANDLE·레이어·양 끝점 원본 대조 통과 (좌표 반올림 오차 0.000051mm 이하)
B: 114개 선 HANDLE·레이어·양 끝점 원본 대조 통과 (좌표 반올림 오차 0.000051mm 이하)
154개 ID 중복 없음 / 모든 좌표 유한수 / 대응 꼭짓점 수 일치
원호 4개, 좌우 삽입 블록 40쌍 반영
벽체 상단 EL 및 종단 측점 차 19.980m 검산 통과
원본 단면 STA 간격 20.000m 보존; 사용자 허용에 따라 배치 간격만 19.980m로 대응 (verify_geometry.mjs에서 별도 검증)