Скрытие ненужных разрезов

Известная тема: создали вы план, а там —

Грусть-печаль! Ревит, следуя своей логике, отображает все элементы, которые попадают в сечение, — и, конечно, все разрезы.
Конечно, те, кто знают про великую кнопку «Скрыть на виде — Элемент», начнут тыкать и скрывать ненужные разрезы вручную, да еще и не забывать делать это при появлении новых разрезов, да на всех видах!
Но мы, конечно, этим заниматься будем. Итак, как скрыть ненужные разрезы?

Часть 1. Идея

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

Почему? Да потому, что все элементы на видах должны скрываться/отображаться/закрашиваться не потому, что мы ткнули на них и «выбрали другой слой а-ля Автокад», а потому, что в настройки вида нужно вложить механизмы, выполняющие это автоматически в зависимости от того, какая информация содержится в элементе.
Например, если нам на плане не нужны фундаменты — вы не вручную скрываем каждый, а отключаем категорию «Фундамент несущей конструкции». Тогда даже новые фундаменты будут сразу скрываться на этом виде.
С разрезами надо организовать что-то подобное.

Часть 2. Отображение по масштабу

Первое, что можно применить — это стандартный механизм скрытия разрезов на мелких масштабах. Как это работает?
У каждого разреза в свойствах есть опция «Скрыть при масштабах менее»:

Эта опция позволяет автоматически скрывать небольшие разрезы (например, по колонне или приямку) на общих видах (планах в мелком масштабе). Сейчас мой масштаб плана — 1:100, и разрез отображается:

Поменяю масштаб на 1:200 — разрез исчезнет, на 1:50 — появится:

Установлю для всех «местных» разрезов скрытие при масштабах менее 1:50:
Уже интереснее, но, конечно, пока недостаточно.

 

Часть 3. Фильтр по параметру

Стандартный инструмент решения задачи — это фильтры видимости. Вообще, фильтры — отдельная большая тема, и мы сейчас используем только часть их возможностей.
Идея «фильтра по критериям» — в переопределении графики для элемента в зависимости от каких-то параметров этого элемента. Например, закрасить стену красным цветом, если её тип — «Протиповожарная», или отключить колонны, если они относятся к разделу КМ.
То есть, в элемент должна быть вложена информация, за которую мы сможем «уцепиться». А чтобы вложить эту информацию — надо подумать, почему мы не хотим видеть конкретно этот разрез на нашем плане.
Первая причина — на плане отображаются разрезы из другого комплекта. Мы делаем КЖ3, параллельно в проекте делают КЖ1 и КЖ2, и мы не хотим видеть их разрезы. Значит, первое, что нам нужно, — дать Ревиту информацию, к какому комплекту относится каждый разрез.
Первый способ сделать это — через параметры проекта. Зайдем Управление — Параметры проекта:

Нажмем «Добавить», создадим текстовый параметр «Комплект» для категории «Виды»:

Выберем разрезы из нашего комплекта и в свойствах укажем «Комплект — КЖ3»:

Итак, информацию вложили, что дальше? Создаем фильтр. Вкладка Вид — Фильтры:

Жмем «Создать», вписываем имя «Разрезы не КЖ3». Старайтесь давать фильтру максимально информативное имя — с проектом будете работать не только вы, но и ваши коллеги!
Переходим в окно настройки фильтров. Слева в окне будут отображаться все фильтры в проекте (скрин из моего шаблона, и фильтров тут — уже куча на все случаи жизни, а новые фильтры появляются в конце списка); в середине — указание категории, для которой будет срабатывать фильтр; справа — критерии фильтрации.

Установите в списке категорий галочки на «Разрезы» и «Фрагменты». В списке критериев выберите «Комплект — не равно — КЖ3»:

Нажимаем Ок, выходим. Готово, фильтр создан, и теперь мы можем использовать их на разных видах и шаблонах. Зайдем в настройки графики нашего плана и перейдем на вкладку «Фильтры». Фильтров тут пока нет. Нажимаем «Добавить» и находим наш созданный фильтр:

Здесь внимательнее — в списке можно выбирать несколько фильтров, просто щелкая на них (даже без Ctrl). Нажимаем Ок, фильтр добавлен.
Но пока он ничего не делает. Через фильтр можно менять цвет и тип линии, штриховку, прозрачность, но нам нужно просто скрыть. Отключаем галочку:

«Ок» — выходим из окна. Что видим на плане? Все разрезы, в которых не было указано «КЖ3», будут отключены!

Трудоемко, много действий, быстрее скрыть вручную? Возможно. Вот только сейчас мы сделали так, что и новые разрезы из других разделов будут сразу скрываться на нашем плане, а это очень круто!
Правда, есть проблема — новый разрез при создании имеет пустое поле «Комплект» и тоже будет скрываться на нашем плане:

Ничего страшного — воспользуемся тем, что разрез после создания остается выделенным. В свойствах сразу же вписываем «КЖ3» — разрез появится на плане:

Параметр «Комплект» уже хорошо помог нам, но поможет и еще: мы сможем при помощи этого параметра организовать список видов в «Диспетчере проекта», но об этом — в следующий раз!

Кстати, этот параметр можно использовать и в шаблоне вида:

Тогда при назначении разрезу этого шаблона «Комплект» будет указан сразу — разрез, где надо, отобразится или скроется, и в «Диспетчере» переедет в нужное место.

Часть 4. Фильтр по имени

Параметр «Комплект» — хорошее решение, но есть одна проблема. Ревит не позволяет задавать в одном проекте виды с одинаковым именем, а в разных комплектах могут быть элементы с одном маркировкой, и «Разрез по Ст-1» может быть не один. Конечно, можно добавлять к имени вида «непечатаемые символы» и еще как-то извращаться… Но можно просто добавить к имени имя комплекта, к которому относится данный разрез, например «КЖ3.Разрез по Ст-1».

После этого добавлять параметр «Комплект» и еще раз писать в нем «КЖ3» — явно не оптимальное решение. Можно ли сделать фильтр по имени вида? Да без проблем!
Зайду Вид — Фильтры, найду наш фильтр «Разрезы не КЖ3» — изменить. Выберите «Фильтр по — Имя вида» и обратите внимание на список доступных условий:

Есть из чего выбрать! Выберите «Не начинается с — КЖ3».

А теперь подумаем. «Не начинается с КЖ3″… А если появится КЖ30? Он тоже начинается с КЖ3! Но мы отделяем в имени вида номер комплекта точкой, так что выберем «Не начинается с — КЖ3.»

Так как мы поменяли фильтр, уже примененный к вида — все изменения произойдут сразу же.

Конечно, при создании нового разреза он будет скрыт, как и в предыдущем случае — разрезы по умолчанию именуются «Разрез такой-то», и имя не начинается с «КЖ». Не беда — также вписываем правильное имя сразу после того, как разрез создан, и он отобразится на плане:

При помощи имени вида мы также сможем организовать диспетчер проекта. Еще это поможет, например, при поиске нужного вида в списке выбора опорного вида или ориентации 3D-вида — список сортируется по алфавиту, и мы увидим сначала все разрезы из КЖ1, затем КЖ2 и так далее, очень удобно, когда видов много:

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

Именно такой способ организации разрезов я использую в своем шаблоне — правда, делю виды не по комплектам, а по уровням. Но сути дела не меняет :)
Помимо фильтров по комплекту понадобятся еще несколько фильтров, например «Виды — не опалубка», «Виды — не стадия П», «Виды — с текстовым заголовком». Как их создать и добавить — предлагаю подумать самостоятельно.

Пробуйте, и удачи в освоении Ревита!

UPD: еще по видимости разрезов от Андрея Фазлеева и Дмитрия Макарова.

UPD 2: да, также скрывать разрезы можно при помощи стадий (скрываются все разрезы кроме разрезов в этой же стадии) и «Категорий вида» (на видах «Конструкции» скрываются «Архитектура», и наоборот). Но все эти способы не универсальны (что делать, если та же стадия, тот же уровень и та же категория вида, но отображать не нужно?), и неизбежно нужны дополнительные критерии; использование же «Фильтров» покрывает все надобности, и ничего дополнительно использовать не нужно.