• Главная
  • Новости
  • Revit. Параметризация 3.0. Новые стратегии, новые функции, возможность записи в исходный элемент и другие новинки

Revit. Параметризация 3.0. Новые стратегии, новые функции, возможность записи в исходный элемент и другие новинки

Представляем вашему вниманию масштабное обновление плагина Параметризация версии 3.0!

13 ru

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

Формулы

Самое главное и объемное изменение новой версии – полностью переписанный алгоритм обработки формул. Сложно будет объяснить каким образом работал старый алгоритм и как теперь работает новый, поэтому мы просто расскажем на одном примере: если вы написали формулу с функцией IF и в одном из вариантов выполнения (true или false) использовали параметр, которого нет в элементе, то старый алгоритм мог приводить к ошибке. А новый алгоритм теперь вообще не будет пытаться высчитать ненужный вариант!

В редакторе формул теперь можно переносить текст на новую строку. Раньше каждая новая строка считалась выражением. Теперь начало выражения определяется целевым параметром, а все последующие строки прибавляются к этому выражению. Для большей очевидности в редакторе формул добавлено отображение количества выражений:

1 ru

А еще учтены некоторые случаи, при которых не работала раскраска полей в редакторе формул.

Фиксация изменений

Ранее фиксация изменений в документе (фиксация транзакции) происходила на уровне правила: вычислялись все выражения правила и затем выполнялась фиксация. Теперь же фиксация изменений происходит при записи результат в параметр целевого элемента. Если вам кажется это все сложным и непонятным, объясним на примере: допустим вы написали формулу в правиле, которая состоит из двух выражений. В первом выражении изменяется условный параметр А, а во втором выражении этот самый параметр А используется в какой-то функции. Так вот, ранее, во втором выражении бралось исходное значение параметра А, которое было у элемента до обработки правила несмотря на то, что в первом выражении изменялось значение параметра А. Вы могли обойти этот момент, написав второе выражение в новом правиле. Теперь же при выполнении второго выражения будет использовано значение параметра А, которое было задано в первом выражении.

В версии 3.1.0.0 от 18 ноября 2024 г. в настройки была добавлена возможность указать, когда будет происходить фиксация изменений в документе.

Ссылочные параметры и специальные параметры ToRoom, FromRoom

Теперь при обработке ссылочных параметров (это параметры, которые ссылаются на другой элемент модели. Например, значение параметра «Уровень» ссылается на уровень в модели) производится попытка задать значение универсальным способом: в модели просто ищется первый попавшийся элемент с указанным именем. Например, вы будете обрабатывать стену и напишите формулу $[Зависимость снизу]=Уровень 1. В прошлой версии плагина вы получите ошибку, а в новой версии плагин найдет в модели первый попавшийся элемент с именем «Уровень 1» и попробует задать его в параметр стены «Зависимость снизу». В большинстве случаев данное действие завершится успехом.

Для семейств в категориях «Окна» и «Двери» теперь можно использовать в качестве ссылочных специальные параметры ToRoom (в какое помещение ведет проем) и FromRoom (из какого помещения ведет проем). Ну а параметры из ссылочных элементов, как и прежде, берутся через вертикальную черту - $[FromRoom|Имя].

Специальная обработка

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

  • Изменение параметра «Метод определения потерь» для труб и воздуховодов
  • Изменение параметра «Тип изоляции» (Трубы и воздуховоды) и «Тип внутренней изоляции» (Воздуховоды)

Дизайн

Во всем плагине произведено множество мелких улучшений в дизайне. Кратко опишем:

  • Подтверждение удаления конфигурации или стратегий теперь выполнено в небольшом всплывающем диалоге. Теперь не нужно двигать курсор к середине окна:

2 ru

  • В поле описания стратегии добавлен перенос на новую строку
  • Добавлена возможность менять размер столбцов в основном окне и в редакторе формул

3 ru

  • Переделан диалог выбора функций – теперь он более компактный, а функции разделены по группам:

4 ru

  • Добавлено оглавление в инструкцию:

5 ru

  • Добавлена возможность мышкой перетаскивать правила в другую стратегию
  • Добавлена возможность развернуть список правил

Раскраска

Стратегии и правила теперь можно красить! Стратегии в списке раскрашиваются полностью:

6 ru

А у правил в списке раскрашивается только первая ячейка:

7 ru

Геометрия

При работе стратегий, которые проверяют попадание одного элемента в тело другого (InRoom, IsMass и т.д.), ранее проверка производилась только через твердое тело. Если у проверяемого элемента не было твердого тела, то он просто пропускался. Но есть разновидность элементов, у которых вообще не бывает твердого тела. Например, у аннотационных элементов или элементов узлов. Поэтому мы добавили также проверку попадания 2D-геометрии элемента в твердое тело другого элемента. Более того, если у элемента вообще нет геометрии, то его попадание в твердое тело другого все равно будет проверено через точку вставки.

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

8

А все потому, что у этой двери на плане этажа присутствует только 2D-геометрия и вся эта 2D-геометрия находится вне стены. Таким образом вся 2D-геометрия этой двери на плане полностью находится внутри помещения. Поэтому важно на каком виде вы запускаете такие стратегии и с каким уровнем детализации!

Новые функции

Были добавлены новые функции:

  • REPLACE – позволяет заменить в строке одну подстроку на другую
  • FORMAT – преобразует число в строку с указанным форматом
  • CV – описана далее

Более подробную информацию по функциям обязательно смотрите в инструкции, доступной в редакторе формул!

Excel как источник данных

Теперь к стратегии можно подключить источник данных в виде листа из указанного Excel-файла!

9 ru

Указав источник данных, вы можете в формуле использовать новую функцию CV (Cell Value), которая будет возвращать значение из указанной ячейки. Таким образом в некоторых случаях вы можете использовать одну стратегию с несколькими правилами и множество вариантов Excel-файлов!

Фильтры стратегии

Стратегии обзавелись еще одним новым свойством – фильтрами:

10 ru

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

Обработка на выбранных видах

Еще одна новинка, над которой пришлось потрудиться – запуск параметризации на выбранных видах:

11 ru

Работает по аналогии с вариантом «На текущем виде», только плагин будет открывать каждый выбранный вид и исполнять на нем текущие отмеченные стратегии. Будет полезно для случаев, когда ваши стратегии зависят от вида.

Новые стратегии

Добавлены новые стратегии:

  • CurtainWallComponents – позволяет обработать составные части витража (импосты и панели), считая витраж условно исходным элементом
  • OneToMany – позволяет обработать элементы, указав любые условно исходные элементы. Лучше всего указать прям конкретный элемент, для чего в этой стратегии даже отображается кнопка выбора элемента:

12 ru

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

Запись в условно исходный элемент

Возможность, которую многие ждали – теперь результат вычисления выражения можно записать в условно исходный элемент! Для этого выражение нужно начать с одной из двух специальных функций (которые, конечно же, описаны в инструкции):

  • JOIN – собирает результаты вычисления выражения, а затем записывает их в виде строки в строковый параметр условно исходного элемента, используя указанный разделитель
  • SUM – складывает результаты вычисления выражения (соответственно, результатом должно быть число) и полученную сумму записывает в числовой или строковый параметр условного исходного элемента.

Например, вы создаете стратегию InRoom и в качестве целевых элементов указываете, ну например, мебель. Допустим, у вас есть помещение, в котором 3 стула и 1 стол.

Если вы напишите обычное выражение $[Комментарии]=@[Имя], то в параметр «Комментарии» этой мебели запишется имя помещения, в котором эта мебель расположена.

Если вы напишите выражение JOIN(@[Комментарии],, )=$[Имя], то в параметр «Комментарии» помещения запишется строка «Стул, Стул, Стол, Стул». Обратите внимание, что во втором аргументе специальной функции JOIN не нужно экранировать запятую.

Если вы напишите выражение SUM(@[Комментарии])=1, то в параметр «Комментарии» помещения запишется число 4, так как выражение для каждого элемента мебели вернет 1, а элементов мебели у нас в помещении 4.

Окно результата

Было разработано новое специализированное окно результатов:

13 ru

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

В общем – результаты работы плагина теперь сгруппированы более логично и наглядно!

Разное

И еще несколько изменений и новинок:

  • Добавлена сортировка конфигураций в алфавитном порядке при загрузке плагина
  • Добавлен экспорт и импорт конфигурации
  • При импорте стратегий в текущую непустую конфигурацию в диалоге действий добавлена кнопка «Отмена»
  • Выбранная область обработки, а также некоторые настройки (доступные в правом верхнем углу плагина) теперь сохраняются для каждой конфигурации
  • Убрано закрытие редактора формул нажатием клавиши Esc
  • Добавлено построение твердого тела для витражей по геометрии его компонентов (импостов и панелей)
  • Добавлена проверка, что элемент занят другим пользователем
  • Добавлена обработка предварительного выбора при выборе области обработки «Выбранные элементы»
  • Добавлено корректное сообщение при выборе области обработки «На текущем виде», если текущий вид не поддерживает выбор элементов
  • Исправлена ошибка, при которой не экспортировалось свойство формул «Отвязать»
  • Исправлена ошибка, при которой некорректно обрабатывались фильтры условно исходных элементов при вставке правила из буфера обмена
  • Добавлена возможность в параметры типа «Да/Нет» записывать значения True, False, а также результат вычисления логических функций

Заключение

Это обновление достаточно масштабное. И хотя мы все протестировали, вероятность наличия ошибок или некорректной работы алгоритмов все равно присутствует. Обязательно пишите нам о таком на Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript. или в чат поддержки.

Недавно команда Bim2B выпустила курс по плагинам армирования. Мы хотим сделать такой же курс по плагину Параметризация, ибо считаем, что набор его возможностей заслуживает отдельного курса! Поэтому мы просим вас, уважаемые пользователи, кто уже использует Параметризацию в своей работе, прислать нам на Адрес электронной почты защищен от спам-ботов. Для просмотра адреса в вашем браузере должен быть включен Javascript. ваши рабочие конфигурации, чтобы мы могли рассказать в курсе про реальные задачи, закрываемые плагином. А если вы при этом еще и опишите нам эти самые задачи, то мы будем вам премного благодарны!

Приятной вам работы с ModPlus!

Комментарии для сайта Cackle