콘텐츠로 이동

📦 아카이브

일회성 용도로 만들어졌지만 패턴이 재사용 가능해서 보존 중인 도구 모음.

아카이브 정책

  • pyRevit이 스캔하지 않음 — UI에 표시되지 않지만 코드는 살아있음
  • 프로덕션 도구와 분리하여 인지 부하 감소
  • 나중에 범용화할 때의 출발점으로 활용
  • Git 히스토리보다 접근성 좋음

🗂 아카이브 구조

YoonDream.extension/_archived/       ← pyRevit 도구
├── Gutter.stack/                     Drainage 자동입력 3종
├── Pipe.stack/                       Pipe 자동입력·복제
├── ParamCopy.stack/                  파라미터 복사 3종
├── SheetSchedule.stack/              Schedule/VP 관련 2종
└── clash.pushbutton/                 간섭 검토

02.Python/_archived/                  ← Standalone Python
├── 05_PDF_페이지_삽입.py
├── 06_dwg_rename.py
└── 06_시트목록_내보내기.py

01.Dynamo/_archived/                  ← Dynamo 레거시
├── 01.토공사 자동 산출/
├── 02.패밀리 비교용 다이나모/
├── Fill Pattern 이름 변경/
└── 블럭에 문배치.dyn

🔧 pyRevit 아카이브 상세

Gutter.stack — Drainage 자동입력 패턴

보존 이유

"타입명 파싱 → 설명 필드 규칙 기반 채우기" 로직이 3개 도구에서 동일. 범용 Desc Autofill 도구로 통합 가능성 높음.

도구 원본 용도
gutter_desc_autofill.pushbutton/ Gutter 타입 설명 자동입력
sumpit_desc_autofill.pushbutton/ Sumpit 타입 설명 자동입력
trench_desc_autofill.pushbutton/ Trench 타입 설명 자동입력

범용화 시 고려: 대상 카테고리, 타입명 패턴, 생성 규칙을 JSON 룰셋으로 분리.


Pipe.stack

보존 이유

Desc Autofill은 Gutter와 같은 패턴. Type Duplicator는 Family Type 복제 로직의 범용 기반.

도구 원본 용도
pipe_desc_autofill.pushbutton/ Pipe 설명 자동입력
pipe_type_duplicator.pushbutton/ Pipe Type 복제

ParamCopy.stack — 파라미터 전송 패턴

보존 이유

3개 도구의 로직을 통합하면 "소스→타겟 파라미터 매핑 엔진" 하나로 대체 가능. 카테고리 크로스 처리가 핵심.

도구 원본 용도
batch_param_transfer.pushbutton/ 파라미터 일괄 전송
cross_type_param_copy.pushbutton/ 타입 간 파라미터 복사
type_param_copy.pushbutton/ 타입 파라미터 복사

범용화 방향: 소스 타입 → 타겟 타입 매핑 → 파라미터 이름 매핑 → 값 복사 규칙 → 일괄 적용.


SheetSchedule 일부

도구 원본 용도 범용화 포인트
schedule_excel.pushbutton/ Schedule → Excel 내보내기 lib/yoon_excel.py와 통합, 다중 스케줄 배치 처리로 확장
viewport_align.pushbutton/ VP 정렬 시트 내 뷰포트 좌표 제어, 시트 레이아웃 자동화로 확장

QC 레거시

도구 원본 용도
clash.pushbutton/ 간섭 검토 (Revit 단독)

현황: Navisworks Clash Detective 연동 시 참고 자료. Revit 측 단독 간섭 검토 로직의 1차 구현.


🐍 Python 아카이브 상세

PDF/DWG 파일 조작 레거시

파일 원본 용도 범용화 포인트
05_PDF_페이지_삽입.py PDF 페이지 삽입 pypdf/pdfplumber 사용 패턴 — PDF 일괄 처리 기반
06_dwg_rename.py DWG 파일명 일괄 변경 파일명 규칙 rename 로직 (AutoCAD 불필요)
06_시트목록_내보내기.py 시트 목록 추출 Admin.panel의 Export Sheet List와 기능 중복

🔷 Dynamo 아카이브 상세

Dynamo 워크플로우는 대부분 pyRevit(Python)으로 전환되면서 아카이브됨.

Dynamo 항목 현재 대체 도구
01.토공사 자동 산출/ QTO.panel/earthwork_calc.pushbutton/
02.패밀리 비교용 다이나모/ Admin.panel/familyqc_admin.pushbutton/
Fill Pattern 이름 변경/ (재구현 필요 시 pyRevit으로)
블럭에 문배치.dyn Coco.panel/DoorRoom.stack/door_room_autofill.pushbutton/

Dynamo 버전 호환성

Dynamo 파일은 작성 당시 버전과 현재 설치 버전 차이로 열리지 않을 수 있습니다. 참조만 권장.


🔄 재활성화 방법

아카이브된 도구를 프로덕션으로 되돌리려면:

# 예: ParamCopy.stack 재활성화
git mv YoonDream.extension/_archived/ParamCopy.stack \
       YoonDream.extension/YoonDream.tab/Coco.panel/ParamCopy.stack

pyRevit 재로드 시 자동으로 UI에 표시됩니다.

재활성화보다 범용화를 권장

  • 아카이브 도구는 마지막 테스트 시점의 Revit/pyRevit 버전과 호환성 미보장
  • 재활성화 대신 패턴만 참고하여 현재 규칙(CLAUDE.md)에 맞게 재작성 권장
  • 동적 import, 한국어 주석, UI 크레딧 등 최신 규칙 반영 필요

🗓 아카이브 이력

  • 2026-04-20: 1차 아카이브 (17개 도구)
  • pyRevit: 10개 (Gutter 3 + Pipe 2 + ParamCopy 3 + SheetSchedule 일부 2 + clash 1 — 9개 이동, clash 1개 별도 = 10개... 계산 재확인)
  • 실제 이동 pyRevit: 10개 (3+2+3+2 stack 내부 + 1 clash)
  • Python: 3개 (+ bat 파일 2개 동반)
  • Dynamo: 4개