
Revit에서 사용되지 않는 시트 자동 삭제하기: Dynamo를 이용한 알고리즘
Revit 프로젝트를 진행하다 보면 사용되지 않는 시트가 계속 쌓이게 됩니다. 이러한 시트들은 프로젝트를 복잡하게 만들고, 불필요한 데이터가 남아 관리 효율성을 저하시킬 수 있습니다. 이번 포스팅에서는 Dynamo를 이용해 프로젝트 내에서 사용되지 않는 시트를 자동으로 찾아 삭제하는 방법을 소개합니다. 코드를 기반으로 어떤 노드가 사용되었는지, 그리고 그 과정이 어떻게 이루어지는지 순서대로 설명하겠습니다.
1.Dynamo 알고리즘: 사용되지 않는 시트 삭제 과정

1.1 모든 시트 추출
먼저, Revit 프로젝트 내의 모든 시트를 추출합니다. 이를 위해 All Elements Of Category 노드를 사용하여 ‘시트(Sheets)’ 카테고리에 속하는 모든 객체를 가져옵니다.
- 사용된 노드:
Categories
,AllElementsOfCategory
- 이 단계에서는 프로젝트에 있는 모든 시트를 수집하여, 이후 단계에서 필터링할 준비를 합니다.
1.2 시트 내 뷰(View), 레전드(Legend), 스케줄(Schedule) 포함 여부 확인
Revit에서 각 시트는 다양한 요소들을 포함할 수 있습니다. 시트 안에 뷰, 레전드, 또는 스케줄이 포함되어 있는지 확인하는 과정이 필요합니다. 이 과정에서는 각 요소를 개별적으로 필터링합니다.
- 뷰(Views): 시트 내에 포함된 뷰를 확인하여 필터링합니다.
- 일람표(Schedules): 일람표도 뷰와는 따로 필터링해야 합니다. 뷰에는 일람표가 포함되지 않기 때문에, 이를 별도로 처리합니다.
- 사용된 노드:
Sheet.Views, Sheet.Schedules
- 이 단계에서는 각 시트에서 뷰, 레전드, 일람표가 포함되어 있는지 확인하고, 필요 없는 시트를 추려내기 위한 기초 자료를 마련합니다.
1.3 빈 시트 필터링
뷰나 레전드, 스케줄이 포함되지 않은 시트는 ‘빈 시트’로 간주됩니다. 이 단계에서 필터링을 통해 빈 시트만 따로 추출합니다. 이러한 빈 시트들은 프로젝트에서 불필요한 데이터로 남아 있을 가능성이 큽니다.
- 사용된 노드:
List.FilterByBoolMasK
- 시트가 아무 요소도 포함하지 않은지 확인한 후, 해당 시트를 다음 단계에서 삭제할 수 있도록 준비합니다.
1.4 사용되지 않는 시트 삭제
마지막으로, 필터링된 빈 시트들을 삭제하는 작업을 수행합니다. 삭제된 시트는 더 이상 프로젝트에서 보이지 않게 됩니다.
- 사용된 노드:
Element.Delete
- 불필요한 시트가 정리되면, 프로젝트는 보다 간결하게 유지될 수 있습니다.
2. 결론
Dynamo를 활용하면 Revit 프로젝트 내의 사용되지 않는 시트를 손쉽게 관리할 수 있습니다. 이 알고리즘은 프로젝트 관리의 효율성을 높이고, 불필요한 데이터를 줄이는 데 매우 유용합니다. 이번 포스팅에서는 Dynamo의 기본적인 사용법과 알고리즘 흐름을 설명했으니, 실제 프로젝트에서 직접 사용해 보세요!
← 이전 글
다음 글 →
답글 남기기
댓글을 남기려면 로그인 해야 합니다.