Подкатегории. Варианты использования

В предыдущей статье я рассказал о понятии подкатегорий и об одном из вариантов использования — создания в семействе линий с определенным стилем.

Но, конечно, варианты использования подкатегорий этим не ограничиваются.
В этой статье поделюсь еще несколькими идеями, а также особенностями, которые нужно учитывать при использовании подкатегорий.

Отображение бетонной подготовки под фундаментом

Например, у нас есть семейство столбчатого фундамента, в котором бетонная подготовка смоделирована сразу внутри фундамента.
Проблема в том, что на разрезе контур этой бетонной подготовки нужно отобразить тонкой линией, а контур самого фундамента — основной линией. По умолчанию же бетонная подготовка отображается линией той же толщины, что для самого фундамента:

Нужно изменить отображение только бетонной подготовки.
Создадим в семействе фундамента подкатегорию «Бетонная подготовка»:

Для элемента выдавливания укажем «Подкатегорию»:

Обратите внимание, что в предыдущей статье мы использовали подкатегории для линий, и могли выбрать подкатегорию как для «Проекции» и как для «Разреза». У объемных элементов такого выбора нет (по очевидным причинам).

Загрузим фундамент в проект и укажем в «Переопределении графики» тонкую линию для подкатегории:

То же можно сделать в «Стилях объектов», тогда на новых видах бетонная подготовка сразу будет отображаться в тонких линиях.
Также можно отключить подкатегорию на виде, тогда только на этом виде бетонная подготовка отображаться не будет:

Условные обозначения MEP в разных масштабах

Другая задача: обозначение для семейств инженерного оборудования. Обычно эти обозначения рисуются «Линиями модели», с учетом масштаба. Для масштаба 100 и нужного размера обозначения на листе 5мм нужно нарисовать обозначение размером 500мм.

 

Можно было бы сделать обозначение вложенным семейством «Типовой аннотации», тогда проблем с масштабом бы не было, но вложенные аннотации не отображаются на 3D-видах.

Но если нужно вынести фрагмент схемы в более крупном масштабе, например 1:50 — эти обозначения также увеличиваются, то же обозначение станет размером 10мм, но мне хочется, чтобы в более крупном масштабе обозначение осталось того же размера.
Можно добавить параметр размера обозначения, но тогда при изменении размера он поменяется и на плане, и на фрагменте — на разных видах размер должен быть разным!

Решение — создать две подкатегории «масштаб 100» и «масштаб 50», и в семействе нарисовать два обозначения, каждое в своей подкатегории. Обозначение для масштаба 1:50 будет в два раза меньше:

В проекте по-умолчанию будет видно обо обозначения. Для схемы с маштабе 1:100 отключим подкатегорию «масштаб 50», для фрагмента — «масштаб 100»:

Конечно, абстактный пример, более того, последнее время условные обозначения для инженерных систем мы делаем совсем по-другому, но это уже другая история…

Уровни детализации > Подкатегории

Подкатегории позволяют отобразить один и тот же элемент в проекте по-разному на разных видах (например, на плане отключить категорию «Бетонная подготовка», а на разрезе — оставить). Обратите внимание, что если бы я добавил для бетонной подготовки параметр «Видимости», то при его отключении подготовка исчезла бы и в плане, и на разрезе.

Таким образом, подкатегории чем-то похожи на видимость по уровням детализации. Например, продолжая тему с подготовкой под фундаментов — можно задать для подготовки видимость только на «Высоком» уровне детализации:

Тогда, если на плане включить «средний» уровень детализации — подготовка отключится, на разрезе включить «высокий» уровень — подготовка будет отображаться.
Но уровней детализации только три, и их может не хватить.

Например, обычно в семействах дверей на низком уровне детализации отображается только обозначение открывания, на среднем — включаются дверное полотно и наличники, на высоком — дверные ручки и петли. Но если создать подкатегории для каждого элемента — видимостью можно управлять более гибко:

Но можно сделать каждый из этих элементов в своей подкатегории:

Тогда на виде мы сможем гибко управлять видимостью, причем для всех дверей, если в них одинаково настроены подкатегории для элементов.

Объем балок на низкой детализации

Другая задача, которую мне приходилось решать — это отображение балок на разрезах и планах схем расположения металлоконструкций.
В плане балки должны отображаться линиями, а на разрезе — в объеме:

Конечно, это можно реализовать, если на плане задать для категории «Несущий каркас» низкий уровень детализации, а на разрезе — «Средний».

Проблема в том, что на разрезе некоторые балки нужно было отобразить «в объеме», а некоторые — «линиями»:

Задать разный уровень детализации для элементов одной категории на одном виде нельзя.
Кроме того, на разрезах нам нужно отображать условные обозначения закрепления концов балок, и эти обозначения отображаются только на низком уровне детализации.
Если добавить для балок отображение объема в низкой детализации — то эти прямоугольники появятся в том числе на плане…

Решим эту задачу через «Подкатегории».
Создадим в семействе балки подкатегорию «Объем на низкой детализации», далее создадим еще один элемент «сдвига», зададим для него видимость только на «низкой» детализации, перенесем в подкатегорию:

На плане балки теперь будут отображаться «в объеме». Не беда — зайдем в настройку графики этого плана и отключим подкатегорию:

На разрезе зададим для «Несущего каркаса» низкий уровень детализации. Балки, в которых мы создавали объемный элемент — продолжают отображаться «в объеме»:

Здесь я дополнительно задал для подкатегории тонкую линию

«Фильтры графики» и подкатегории

У подкатегорий есть несколько особенностей, которые нужно учитывать.
Если в семействе есть подкатегория — то её настройки графики уже не будут определяться категорией; если изменить вес линий для «Фундамента несущей конструкции» — графика подкатегории не изменится, собственно что и нужно.
Но если вы будете использовать «фильтр графики» — он переопределит графику элемента полностью, включая элементы в подкатегориях:
(сплошная линия тут получилась потому, что наложились друг на друга две штриховые линии)
Переопределение графики через фильтр срабатывается также на все подкатегории, это нужно иметь в виду.

 

Подкатегории и объединение геометрии

При «Соединении геометрии» модификаторов (например «выдавливания») их подкатегории будут сброшены, а если задать подкатегорию для одного из присоединенных элементов — она будет назначена и для другого: