# 샘플 교각 + 지반 통합 검증 12개 교량 / 원본 64개 교각 중 63개 입력 판독 / 63개 형상 생성. 실제 앱의 Excel·지반·프로젝트 판독 코드와 buildPier로 검증했습니다. | 샘플 | 교량 | 입력 / 형상 | 최대 ΔR(m) | 최대 지반 EL 차(m) | 기존 검증 알림 | |---|---|---:|---:|---:|---:| | 1 | 산외교 | 17 / 17 | 0.000583 | 2.973 | 25 | | 2 | 운곡교 | 6 / 6 | 0.000485 | 0.540 | 7 | | 3 | 대호지교 | 12 / 12 | 0.000632 | 0.182 | 49 | | 4 | 목동교 | 4 / 4 | 0.000565 | 2.484 | 12 | | 5 | 승천천교 | 0 / 0 | 0.000000 | 0.000 | 1 | | 6 | 계문철교 | 2 / 2 | 0.000425 | 1.001 | 4 | | 7 | 기양천교 | 6 / 6 | 0.000538 | 2.508 | 6 | | 8 | 옥성교 | 6 / 6 | 0.000456 | 0.625 | 6 | | 9 | 새재1교 | 1 / 1 | 0.000557 | 0.007 | 1 | | 10 | 도하4교 | 4 / 4 | 0.000543 | 1.930 | 4 | | 11 | 곡천교 | 3 / 3 | 0.000460 | 1.312 | 3 | | 12 | 감북교 | 2 / 2 | 0.000297 | 0.270 | 4 | 승천천교는 원본 받침 방위각 12개 미확인으로 교각 모델 열기를 보류합니다. 지반·지도와 원본 미확정 입력은 통합 파일에 보존했습니다. 원본 Excel은 변경하지 않았습니다. π형 → 2주형은 동일 형식명의 메모리 내 호환 변환이며 셀별 출처를 기록했습니다. ΔR은 Excel IP1/IP3 중점과 지반 JSON의 교각 중심 차이이며, JSON 반올림 정밀도 이내입니다. EL 차이는 원도면 지반면과 Excel 설계 입력의 차이이며 자동 보정하지 않았습니다. 지도 2종은 동일 측량 좌표 모서리를 사용합니다. 원본 CRS의 공인 검증은 미완료이며 추정 상태와 출처를 각 통합 JSON의 sampleProvenance에 보존했습니다. 대호지교는 원본 PDF 벡터에서 복구한 지형으로 PDF 도식 정밀도 한계가 있습니다. DEM·가상 표고는 사용하지 않았습니다. ## 기존 형상 검증 알림 - 산외교 P1: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P2: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P3: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P4: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P5: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P6: [W/W01] IP2 입력과 재계산값이 573.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P7: [W/W01] IP2 입력과 재계산값이 572.9 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P8: [W/W09] 전열 받침 2개, 후열 받침 3개입니다. 각 열의 좌표와 표고로 분리 생성합니다. - 산외교 P8: [W/W01] IP2 입력과 재계산값이 431.3 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P8: [I/W07] 전열·후열 EL 차이가 받침마다 다릅니다 (정보). - 산외교 P9: [W/W01] IP2 입력과 재계산값이 121.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P10: [W/W09] 전열 받침 3개, 후열 받침 4개입니다. 각 열의 좌표와 표고로 분리 생성합니다. - 산외교 P10: [W/W01] IP2 입력과 재계산값이 38.2 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P10: [I/W07] 전열·후열 EL 차이가 받침마다 다릅니다 (정보). - 산외교 P11: [W/W01] IP2 입력과 재계산값이 727.6 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P11: [W/W03] 후열 받침 7번 중심이 계단 경계에서 534 mm 떨어져 블럭 폭의 절반(600 mm)보다 가깝습니다. - 산외교 P11: [W/W04] 받침블럭이 코핑 평면 밖으로 나갑니다. - 산외교 P11: [I/W07] 전열·후열 EL 차이가 받침마다 다릅니다 (정보). - 산외교 P12: [W/W01] IP2 입력과 재계산값이 508.6 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P13: [W/W01] IP2 입력과 재계산값이 555.9 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P14: [W/W01] IP2 입력과 재계산값이 402.9 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P15: [W/W01] IP2 입력과 재계산값이 403.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P16: [W/W01] IP2 입력과 재계산값이 402.9 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P17: [W/W01] IP2 입력과 재계산값이 403.0 mm 다릅니다. 재계산값을 사용합니다. - 산외교 P17: [I/W07] 전열·후열 EL 차이가 받침마다 다릅니다 (정보). - 운곡교 P1: [W/W01] IP2 입력과 재계산값이 10959.6 mm 다릅니다. 재계산값을 사용합니다. - 운곡교 P2: [W/W01] IP2 입력과 재계산값이 10946.1 mm 다릅니다. 재계산값을 사용합니다. - 운곡교 P3: [W/W01] IP2 입력과 재계산값이 10938.2 mm 다릅니다. 재계산값을 사용합니다. - 운곡교 P4: [W/W01] IP2 입력과 재계산값이 10936.0 mm 다릅니다. 재계산값을 사용합니다. - 운곡교 P5: [W/W01] IP2 입력과 재계산값이 10939.5 mm 다릅니다. 재계산값을 사용합니다. - 운곡교 P6: [W/W01] IP2 입력과 재계산값이 10949.9 mm 다릅니다. 재계산값을 사용합니다. - 운곡교 P6: [I/I01] 받침블럭 높이 91 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P1: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P1: [I/I01] 받침블럭 높이 30 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P1: [W/RB02] 블럭 높이 30 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P1: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P2: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P2: [I/I01] 받침블럭 높이 30 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P2: [W/RB02] 블럭 높이 30 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P2: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P3: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P3: [I/I01] 받침블럭 높이 30 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P3: [W/RB02] 블럭 높이 30 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P3: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P4: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P4: [I/I01] 받침블럭 높이 25 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P4: [W/RB02] 블럭 높이 47 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P4: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P5: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P5: [I/I01] 받침블럭 높이 28 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P5: [W/RB02] 블럭 높이 28 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P5: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P6: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P6: [I/I01] 받침블럭 높이 30 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P6: [W/RB02] 블럭 높이 30 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P6: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P7: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P7: [I/I01] 받침블럭 높이 30 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P7: [W/RB02] 블럭 높이 30 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P7: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P8: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P8: [I/I01] 받침블럭 높이 28 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P8: [W/RB02] 블럭 높이 28 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P8: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P9: [W/W01] IP2 입력과 재계산값이 9720.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P9: [I/W07] 전열·후열 EL 차이가 받침마다 다릅니다 (정보). - 대호지교 P9: [I/I01] 받침블럭 높이 25 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P9: [W/RB02] 블럭 높이 25 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P9: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P10: [W/W01] IP2 입력과 재계산값이 9695.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P10: [I/I01] 받침블럭 높이 45 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P10: [W/RB02] 블럭 높이 45 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P10: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P11: [W/W01] IP2 입력과 재계산값이 9695.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P11: [I/I01] 받침블럭 높이 45 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P11: [W/RB02] 블럭 높이 45 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P11: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 대호지교 P12: [W/W01] IP2 입력과 재계산값이 9695.0 mm 다릅니다. 재계산값을 사용합니다. - 대호지교 P12: [I/I01] 받침블럭 높이 45 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 대호지교 P12: [W/RB02] 블럭 높이 45 mm보다 S1 깊이 69.1 mm가 깊습니다. - 대호지교 P12: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 목동교 P1: [W/W01] IP2 입력과 재계산값이 12849.3 mm 다릅니다. 재계산값을 사용합니다. - 목동교 P1: [I/I01] 받침블럭 높이 37 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 목동교 P1: [W/RB02] 블럭 높이 37 mm보다 S1 깊이 69.1 mm가 깊습니다. - 목동교 P2: [W/W01] IP2 입력과 재계산값이 12850.3 mm 다릅니다. 재계산값을 사용합니다. - 목동교 P2: [I/I01] 받침블럭 높이 37 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 목동교 P2: [W/RB02] 블럭 높이 37 mm보다 S1 깊이 69.1 mm가 깊습니다. - 목동교 P3: [W/W01] IP2 입력과 재계산값이 12852.2 mm 다릅니다. 재계산값을 사용합니다. - 목동교 P3: [I/I01] 받침블럭 높이 37 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 목동교 P3: [W/RB02] 블럭 높이 37 mm보다 S1 깊이 69.1 mm가 깊습니다. - 목동교 P4: [W/W01] IP2 입력과 재계산값이 12854.9 mm 다릅니다. 재계산값을 사용합니다. - 목동교 P4: [I/I01] 받침블럭 높이 37 mm가 피복 + 철근 지름(119 mm)보다 작습니다. 블럭 철근은 코핑 안에 묻힙니다. - 목동교 P4: [W/RB02] 블럭 높이 37 mm보다 S1 깊이 69.1 mm가 깊습니다. - 승천천교 P1: [E/E03] 3행: 방위각을 읽을 수 없습니다. 예: 75°56'55.9" 형식으로 고치세요. - 계문철교 P1: [W/W01] IP2 입력과 재계산값이 8360.0 mm 다릅니다. 재계산값을 사용합니다. - 계문철교 P1: [W/RB03] 다리 끝이 코핑 안에 묻히지 않습니다 (블럭 1). - 계문철교 P2: [W/W01] IP2 입력과 재계산값이 8388.4 mm 다릅니다. 재계산값을 사용합니다. - 계문철교 P2: [W/RB03] 다리 끝이 코핑 안에 묻히지 않습니다 (블럭 1). - 기양천교 P1: [W/W01] IP2 입력과 재계산값이 8826.7 mm 다릅니다. 재계산값을 사용합니다. - 기양천교 P2: [W/W01] IP2 입력과 재계산값이 8758.0 mm 다릅니다. 재계산값을 사용합니다. - 기양천교 P3: [W/W01] IP2 입력과 재계산값이 8694.3 mm 다릅니다. 재계산값을 사용합니다. - 기양천교 P4: [W/W01] IP2 입력과 재계산값이 8635.3 mm 다릅니다. 재계산값을 사용합니다. - 기양천교 P5: [W/W01] IP2 입력과 재계산값이 8581.8 mm 다릅니다. 재계산값을 사용합니다. - 기양천교 P6: [W/W01] IP2 입력과 재계산값이 8534.5 mm 다릅니다. 재계산값을 사용합니다. - 옥성교 P1: [W/W01] IP2 입력과 재계산값이 5215.3 mm 다릅니다. 재계산값을 사용합니다. - 옥성교 P2: [W/W01] IP2 입력과 재계산값이 5215.3 mm 다릅니다. 재계산값을 사용합니다. - 옥성교 P3: [W/W01] IP2 입력과 재계산값이 5215.3 mm 다릅니다. 재계산값을 사용합니다. - 옥성교 P4: [W/W01] IP2 입력과 재계산값이 5215.2 mm 다릅니다. 재계산값을 사용합니다. - 옥성교 P5: [W/W01] IP2 입력과 재계산값이 5150.8 mm 다릅니다. 재계산값을 사용합니다. - 옥성교 P6: [W/W01] IP2 입력과 재계산값이 5089.2 mm 다릅니다. 재계산값을 사용합니다. - 새재1교 P1: [W/W01] IP2 입력과 재계산값이 4974.2 mm 다릅니다. 재계산값을 사용합니다. - 도하4교 P1: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 도하4교 P2: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 도하4교 P3: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 도하4교 P4: [W/W01] IP2 입력과 재계산값이 420.0 mm 다릅니다. 재계산값을 사용합니다. - 곡천교 P1: [W/W01] IP2 입력과 재계산값이 1693.2 mm 다릅니다. 재계산값을 사용합니다. - 곡천교 P2: [W/W01] IP2 입력과 재계산값이 1699.4 mm 다릅니다. 재계산값을 사용합니다. - 곡천교 P3: [W/W01] IP2 입력과 재계산값이 1705.3 mm 다릅니다. 재계산값을 사용합니다. - 감북교 P1: [W/W01] IP2 입력과 재계산값이 17866.0 mm 다릅니다. 재계산값을 사용합니다. - 감북교 P1: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') - 감북교 P2: [W/W01] IP2 입력과 재계산값이 17866.0 mm 다릅니다. 재계산값을 사용합니다. - 감북교 P2: [E/APP_RENDER] 앱 후속 화면 계산 오류: Cannot read properties of undefined (reading 'top') ## 실행 `node pierzainer_ground/merge_sample_projects.mjs` (프로젝트 루트 Pier_v1에서 실행). 원본 Excel/JSON은 읽기만 하고 두 허용 폴더에만 결과를 저장합니다. ## 랜딩페이지 실행 판정 - 산외교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 운곡교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 대호지교: 교각·지반 통합은 완료됐으나 현재 앱의 현장타설말뚝 후속 화면에 확대기초 참조 오류가 있습니다. 외부 모델러 수정 전까지 열기를 보류합니다. - 목동교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 승천천교: 원본의 받침 방위각 12개가 미확인입니다. 지반·지도 자료는 생성되었으나 교각 모델은 방위각 확인 후 불러올 수 있습니다. - 계문철교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 기양천교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 옥성교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 새재1교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 도하4교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 곡천교: 샘플 열기 연결. 기존 검증 알림과 생성 불가 교각은 그대로 표시. - 감북교: 교각·지반 통합은 완료됐으나 현재 앱의 현장타설말뚝 후속 화면에 확대기초 참조 오류가 있습니다. 외부 모델러 수정 전까지 열기를 보류합니다. 대호지교·감북교 오류는 src/core/rebar/column.ts의 columnInputFor가 현장타설말뚝에도 model.footings[0].top을 읽는 데서 발생합니다. 이 파일은 현재 작업 범위 밖이므로 수정하지 않았습니다.