Files
Pier_v1/도면추출
ypshim f51865c57b Merge origin/master with current Pierzainer development
Preserve local abutment, cast-in-place rebar and compact header features alongside remote drawing, ground-link and quantity workspaces. Adapt drawing and takeoff consumers to generated solplate plans, retain current P1 regression coverage, and resolve bearing-detail annotation collisions.

Validation: 122 test files / 975 tests passed; production build passed; 10 browser integration checks passed.
2026-11-06 17:10:33 +09:00
..
2026-11-03 12:04:58 +09:00
2026-11-03 12:04:58 +09:00
2026-11-03 12:04:58 +09:00
2026-11-03 12:04:58 +09:00
2026-11-03 12:04:58 +09:00
2026-11-03 12:04:58 +09:00
2026-11-03 12:04:58 +09:00

도면추출 연동 패키지 0.1.9

Windows용 오프라인 DWG → 교각 입력 엑셀 추출기입니다. 이 폴더 전체를 함께 복사해서 사용합니다.

위치 내용
실행.bat 폴더 선택 화면 실행
run_extract.bat 다른 프로그램에서 호출할 명령행 진입점
app 프로그램 소스, DWG 변환기, Python 및 엑셀 라이브러리
samples 교량별 최종 엑셀 12개와 기본 샘플 운곡교P1입력.xlsx, 단일 시트 검증 자료 P1.xlsx
integration/bridge_extract.py Python 연동 함수 및 JSON 출력 CLI
integration/*.whl Python 설치형 패키지 0.1.9
integration/sample_data 최종 샘플과 대응하는 JSON·검토 CSV
history 샘플 보정 내역, 이전 검증 결과와 출처 기록

화면에서 실행

실행.bat을 열고 도면 폴더를 선택한 뒤 자동 추출을 시작합니다. 기본 결과 위치는 선택한 폴더의 _도면추출결과/실행시각/입니다. DWG 원본과 기존 엑셀은 입력 폴더에 둡니다. 기존 엑셀은 일반 자동 추출 시 입력으로 읽지 않습니다.

다른 프로그램에서 호출

외부 프로그램의 프로세스 실행 기능으로 다음 인수를 넘깁니다. 별도 Python 설치 없이 포함된 런타임을 사용합니다.

run_extract.bat "C:\도면\교량폴더" --output "C:\결과\교량폴더"

표준 출력은 JSON 객체 하나입니다. 성공 시 종료 코드0, 실행 실패 시1입니다. status는 completed, needs_review, error이며, needs_review도 결과 파일이 생성된 상태입니다. workbooks에서 xlsx_path, json_path, review_csv_path, data를 읽습니다. 읽기 실패 파일은 files와 failed_file_count에서 확인합니다. 표준 오류도 함께 수집하는 것을 권장합니다. GUI에서는 작업 스레드나 별도 프로세스로 호출합니다.

Python 프로그램에 직접 연결할 수도 있습니다.

import sys
sys.path.insert(0, r"C:\배포\도면추출")
from integration.bridge_extract import extract_folder

result = extract_folder(r"C:\도면\교량폴더", output_dir=r"C:\결과")
payload = result.to_dict()
for book in result.workbooks:
    print(book.xlsx_path)
    pier_cells = book.data["cells"]["Pier"]

설치형 wheel을 쓸 때는 bridge_drawing_extractor.extract_folder를 호출하고 converter_path에 app/Code/giyang_extract/libredwg/dwgread.exe를 전달합니다. Python3.10 이상과 openpyxl3.1 계열이 필요하며, 이 배포 폴더에는 Windows용 Python3.12와 필요한 라이브러리가 포함되어 있습니다.

데이터 형식과 최신 규칙

  • XLSX는 Pier, IP, Bearing 탭 3개입니다. JSON cells는 같은 시트/셀 주소의 값을 보관하고 records에는 값, 상태, 근거가 있습니다.
  • 좌표·EL은 m, 말뚝길이·두부보 폭·길이는 mm입니다. 빈칸은 JSON의 null입니다.
  • 기둥 수는 T형1개/π형2개. 형식 판독 불명확 시 기본 T형입니다.
  • 두부보 EL은 교좌면 EL 최솟값, 받침 Z는 교량받침 EL(몰탈상단)입니다.
  • 폭은 전후열 각각의 받침 좌표 평균점 사이 거리+2000mm를 500mm 올림합니다. 길이는 IP1-IP3 거리를 엄격히 초과하는 다음500mm입니다.
  • IP1~IP3을 사용하며 IP4 행은 좌표·꺾임각 공란입니다. 받침 H열은 전열/후열입니다.

샘플 및 검토 범위

샘플12개는 프로그램 추출 후 사용자의 지시에 따라 각 원본 샘플 엑셀로518셀을 대조·보정한 결과입니다. 자동 추출 엔진이 이 보정값을 학습하거나 모든 값을 자체 판독한 것은 아닙니다. 샘플 데이터만 사용할 경우 samples 또는 integration/sample_data를 읽습니다.

64교각·652받침, IP4공란·치수산식·엑셀/JSON6484셀 대조를 확인했습니다. 승천천교 방위각12개는 원문과 샘플에 값이 없어 미확인입니다. 기양천교 상충EL 등 이번에 샘플값을 채택한 항목은 history의 보정내역을 확인합니다.

새로운 DWG에 대해서는 미확정 또는 검토필요 값이 나올 수 있습니다. 이미지 PDF OCR, 임의의 기둥 형상 자동 판독, 복잡한 지시선 및 모든 측점 보간은 완성되지 않았습니다. 셀 상태와 근거를 함께 확인합니다. 과거 작업폴더에 의존하던 개발·검증 스크립트는 정리했으며 실행 진입점은 위의 두 가지입니다.

포함된 Python·openpyxl·LibreDWG 등 제3자 구성요소의 라이선스 및 안내 파일은 app/runtime 및 app/Code/giyang_extract/libredwg 하위에 보존했습니다.