Введение
При работе над устранением коллизии зачастую появляется необходимость группировать их по определенным участкам здания (зонам, секциям, блокам, фрагментам и пр.). Это может быть связано с поэтапным планом отработки пересечений, либо распределением коллизий между несколькими участниками в рамках крупного объекта для параллельной работы. Также такое разделение помогает лучше спланировать работы и отслеживать изменения не только в общем объеме, но и точечно по участкам.
Самым простым решением этой задачи является группирование коллизий по существующим уровням, однако в случае когда есть необходимость сформировать группы иначе (корпуса, типовые зоны, разбивка по захваткам), данного способа не достаточно.
Из аналогов для решения подобной задачи я обнаружил один плагин, но его нельзя получить в свободном доступе - это инструмент “Clash Manager - Group Clashes by Zones” в рамках плагина “iconstruct”.
Далее я хочу поделиться разработанной технологией позволяющую объединять коллизий по любому из необходимых вариантов разделения объекта (секции, типовые этажи, зоны, боки и пр.).
Процесс потребует следующие программы:
- Revit;
- Navisworks Manage;
- Navisworks® Coordination Issues Add-In - бесплатный плагин для Navisworks от Autodesk, позволяющий выполнять группировку коллизий по любому параметру (после установки появляется на вкладке “Координационное/Создать группы”).
Общее описание процесса.
Мой принцип группирования коллизий по фрагментам берет за основу встроенную функцию Navisworks позволяющую сопоставить центр коллизии с ближайшей точкой пересечения двух осей. Исходя из него было сформирован следующий подход:
- В Revit подготавливается файл разбивки по фрагментам, имеющий нужные нам точки пересечения осей. Имена осей отражают имена фрагментов.
- Созданный файл подгружается в сводную Navis модель и выставляется как файл с активной сеткой (по которому отображаются оси).
- Каждая коллизия автоматически присваивает себе “Пересечение сетки” - в нашем случае это будет имена осей содержащий принадлежность к фрагменту.
- Далее выполняем группировка коллизии по сеткам (фрагментам).
- По итогу все коллизии собираем в необходимые группы по пересечениям сеток (фрагментам).
Ниже я опишу и продемонстрирую подготовку разбивочного файла, а после выполним по нему группировку коллизий.
Алгоритм работы.
Для примера демонстрация подходя будет происходить на базовом проект Revit содержащего инженерные сети “rme_basic_sample_project.rvt”.
Этап 1. Создание файла разбивки на фрагменты
1. Создаваем новый файл Rvt (изначально пустой) для разбивки и назовем “Фрагменты.rvt”, для удобства подгрузим связью раздел АР, по которому будем намечать разбивку.
2. В файле "Фрагменты.rvt" определим бедующую разбивку фрагментов, предварительно наметим ее линиями.
В примере я буду делить здание по плану на 3 части.
3. Наметив линии разделения по фрагментам на равном расстоянии от них размещаем по одному пересечению осей для каждого фрагмента.
4. В имя каждой оси указываем номер фрагмента, звездочкой отделяем порядковый номера самой оси (Revit не даст создать 2 оси с одним номером).
5. Проверяем что наши оси пересекают необходимые уровни (лучше это сделать сразу после создания 1й оси, остальные уже копировать с нее).
Если на уровень не попадает ни одно пересечение осей, то коллизиям в этом уровне не будет присвоен ни один фрагмент.
6. Далее открываем 3d вид и производим экспорт модели в формат NWC. Если пустой вид не хочет экспортироваться, то включаем видимость уровней.
7. Открываем NWF модель в которой будем выполнять группировку коллизий по фрагментам.
В моем примере это модель с проверкой на самопересечения "rme_basic_sample_project.nwc"
8. Подгружаем созданный ранее NWC файл с фрагментами "Фрагменты.nwc"
Наш файл NWF должен содержать проверяемые на пересечения файлы и файл с разбивкой фрагментов.
9. Включаем файл фрагментов как файл для сетки осей, для этого переходим на вкладку "Вид"/"Сетки и уровни"/ "Активация сетки"
10. Для проверки что оси выгружены корректно можем включить "Показать сетку", режим отображение переключить на фиксированный, а после этого переключить все уровни, для проверки наличия на них созданных нами осей.
На этом подготовительный этап окончен, в дальнейшем нам не потребуется проводить процедуру повторно, за исключением изменений фрагментов.
Этап 2. Группирование коллизий по фрагментам.
Группировать коллизии будем в результатах проверки самопересечений модели на низком допуске (для наглядности)
1. Запускаем проверку и в результатах сразу видим принадлежность к осям "Пересечения сетки" (фрагментам) каждого конфликта. Из всего полученного кода нас интересует символ слева до 1й звездочки, это и есть номер нашего фрагмента который мы указали в имена осей.
Все что нам осталось сделать это сгруппировать полученные конфликты по данному параметру. Для группировки мы будем использовать бесплатный плагин от Autodesk - Navisworks® Coordination Issues Add-In.
2. Открываем вкладку с плагином "Координационное", нажимаем на кнопку "Создать группы"
3. Для группирования без учетов уровней выбираем группировать по "Пересечения сетки"
4. Если нам нужна группировка также с разбивкой по уровням выбираем "Уровень - сетка"
5. В результатах выбранной проверки будут сформированы группы по фрагментам с учетом или без учета уровней (исходя из нашего выбора).
Для удобства упростим имя групп, оставив в ней только номер уровня и номер фрагмента.
Результат
В итоге мы получаем 3 группы по каждому фрагменту.
Либо получаем группы разбитые по этажам и фрагментам (если группировка выполнялась с учетом уровней).
При появлении новых коллизий повторяем весь 2й этап, ранее созданные группы скрипт по умолчанию объединять в новые не будет.
Заключение
В результате мы получаем группы пересечений имеющие привязку к конкретным участкам объекта. Такая разбивка позволяет нам в дальнейшем грамотно планировать работы по устранению пересечений, а также отслеживать изменения отдельно по каждому фрагменту.
В примере показана упрощенная схема нарезки здания. Также подобным образом можно создавать более сложную схему нарезки зон.
С точки зрения автоматизации описанные подготовительные работы 1го этапа нами выполняются в полуавтоматическом режиме скриптами Dynamo (создание осей в нужном положении, наименование, высоты осей) .
Второй этап также автоматизирован внутренними надстройками на Navisworks, что позволяет формировать данные группы в полуавтоматическом режиме.
Дальнейшая обработка созданных по фрагментам групп ведется по алгоритму который я описывал ранее в следующей статье:
Если вы дочитали эту статью до конца и вынесли из нее что-то полезное, либо у вас остались по ней вопросы, то прошу поделиться этим в комментариях. Спасибо!