В Dynamo представлено огромное количество готовых функций, а также имеется обширная библиотека пакетов, которая позволяет существенно расширить возможности Dynamo. Пакет — это набор пользовательских узлов или дополнительных функций. Dynamo Package Manager — это портал для сообщества пользователей, где можно скачать любые пакеты, которые были опубликованы в интернете. Эти инструментарии разрабатываются сторонними поставщиками и предназначены для расширения базовых функций Dynamo, доступных каждому пользователю по первому требованию.
Проекты с открытым исходным кодом, такие как Dynamo, активно развиваются благодаря подобному участию сообщества. Благодаря узкоспециализированным сторонним разработчикам Dynamo может использоваться в самых различных отраслях. По этой причине команда Dynamo сконцентрировала свои усилия на оптимизации разработки и публикации пакетов (подробнее эта тема будет обсуждаться в следующих разделах).
Самый простой способ установки пакета — воспользоваться пунктом меню «Пакеты» в интерфейсе Dynamo. Перейдем к этому пункту и установим пакет. В этом небольшом примере будет установлен популярный пакет для создания прямоугольных панелей на сетке.
В Dynamo выберите Пакеты > Package Manager...
В строке поиска введите «quads from rectangular grid». Через некоторое время отобразятся все пакеты, соответствующие поисковому запросу. Выберем первый пакет с соответствующим именем.
Нажмите кнопку «Установить», чтобы добавить пакет в библиотеку, а затем подтвердите действие. Готово!
Обратите внимание, что в библиотеке Dynamo появилась группа с именем buildz. Это имя разработчика пакета, а в группе содержится пользовательский узел. Его можно сразу использовать.
!
Используйте узел Code Block для быстрого определения прямоугольной сетки, вывода результата в узел Polygon.ByPoints, а затем узел Surface.ByPatch для просмотра списка только что созданных прямоугольных панелей.
!
В приведенном выше примере описан пакет с одним пользовательским узлом. Та же самая процедура используется для скачивания пакетов с несколькими пользовательскими узлами и вспомогательными файлами данных. Продемонстрируем это на примере более крупного пакета: Dynamo Unfold.
Как и в приведенном выше примере, выберите Пакеты > Package Manager...
На этот раз выполним поиск по слову DynamoUnfold. Когда пакеты отобразятся, скачайте их, нажав кнопку «Установить», чтобы добавить Dynamo Unfold в библиотеку Dynamo.
В библиотеке Dynamo появилась группа DynamoUnfold с несколькими категориями и пользовательскими узлами.
!
Рассмотрим структуру файлов и папок пакета.
Сначала выберите «Пакеты» > «Package Manager» > «Установленные пакеты».
Рядом с DynamoUnfold выберите меню параметров .
Затем нажмите «Показать корневую папку», чтобы открыть корневую папку для этого пакета.
Откроется корневая папка пакета. Обратите внимание, что в ней содержится три папки и файл.
!
В папке bin находятся файлы DLL. Этот пакет Dynamo был разработан с помощью функции Zero-Touch, поэтому пользовательские узлы хранятся в этой папке.
В папке dyf хранятся пользовательские узлы. Так как данный пакет был разработан без пользовательских узлов Dynamo, папка пуста.
В папке extra хранятся дополнительные файлы, включая файлы примеров.
Если открыть папку extra, в ней можно увидеть несколько файлов примеров, которые были скачаны при установке. Если пакет сопровождается файлами примеров (что бывает не всегда), их следует искать в этой папке.
Откроем файл SphereUnfold.
Нажав после этого кнопку «Запуск» в решателе, получим развернутую сферу. Файлы примеров, подобные этим, используются для обучения работе с новыми пакетами Dynamo.
!
В Package Manager можно выполнять поиск пакетов с помощью параметров сортировки и фильтрации на вкладке «Поиск пакетов». Существует несколько фильтров: по главной программе, статусу (новый, исключенный или неисключенный), а также по наличию зависимостей в пакете.
Сортировка пакетов позволяет определить пакеты с наивысшей оценкой или наиболее часто скачиваемые пакеты, а также найти пакеты с последними обновлениями.
Чтобы узнать подробнее о каждом пакете, нажмите «Просмотр сведений». При этом в Package Manager открывается боковая панель, на которой представлены такие сведения, как управление версиями и данные о зависимостях, URL-адрес веб-сайта или репозитория, сведения о лицензии и т. д.
Еще один способ найти пакеты Dynamo — воспользоваться веб-сайтом . Здесь вы можете найти зависимости пакета и сведения о совместимости основной программы/версии, предоставленные разработчиками пакетов. Кроме того, из Dynamo Package Manager можно скачивать файлы пакетов Dynamo, но делать это непосредственно из Dynamo проще.
Если требуется узнать, где хранятся файлы пакетов, в верхней части окна навигации выберите «Dynamo» > «Настройки» > «Параметры пакета» > «Пути к узлу и файлу пакета», чтобы найти текущую корневую папку.
!
По умолчанию пакеты устанавливаются в следующей папке: C:/Users/[имя пользователя]/AppData/Roaming/Dynamo/[версия Dynamo.
Для пользователей, которые спрашивают, можно ли развернуть Dynamo (в любой форме) с предварительно подключенными пакетами: добавьте пользовательский путь к пакету в каждую установку, при этом можно будет централизованно управлять установками Dynamo для всех пользователей.
Добавление сетевой папки, в которой ответственный за BIM или другие пользователи могут контролировать заполнение папки пакетами, утвержденными организацией
В пользовательском интерфейсе отдельного приложения перейдите в раздел Dynamo -> Настройки -> Параметры пакета -> Пути к узлу и файлу пакета. В диалоговом окне нажмите кнопку «Добавить путь» и перейдите к сетевому расположению ресурса общего пакета.
Автоматизированный процесс предполагает добавление информации в файл конфигурации, устанавливаемый вместе с Dynamo.
C:\Users\[Имя_пользователя]\AppData\Roaming\Dynamo\Dynamo Revit\[Версия Dynamo]\DynamoSettings.xml
По умолчанию конфигурация Dynamo для Revit имеет следующий вид:
<CustomPackageFolders>
<string>C:\Users\[Username]\AppData\Roaming\Dynamo\Dynamo Revit\[Dynamo Version]</string>
</CustomPackageFolders>
Добавление пользовательского пути будет выглядеть следующим образом.
<CustomPackageFolders>
<string>C:\Users\[Username]\AppData\Roaming\Dynamo\Dynamo Revit\[Dynamo Version]</string>
<string>N:\OfficeFiles\Dynamo\Packages_Limited</string>
</CustomPackageFolders>
Для централизованного управления этой папкой следует сделать ее доступной только для чтения.
Организации может потребоваться стандартизировать пакеты, устанавливаемые разными рабочими станциями и пользователями. Чтобы сделать это, можно установить эти пакеты из раздела Dynamo -> Настройки -> Параметры пакета -> Пути к узлу и файлу пакета, выбрать сетевую папку в качестве расположения установки и попросить добавить этот путь на рабочих станциях в разделе Управление путями к узлу и пакету.
Хотя сценарий работает правильно для пакетов, содержащих только пользовательские узлы, он может не работать для пакетов, содержащих двоичные файлы, таких как узлы Zero-Touch. Эта проблема вызвана , которые .NET Framework применяет к загрузке сборок из сетевой папки. К сожалению, использование элемента конфигурации loadFromRemoteSources, предложенного в связанном потоке, не является возможным решением для Dynamo, поскольку он распространяется как компонент, а не приложение.
В качестве одного из возможных временных решений можно использовать подключенный сетевой диск, указывающий на сетевое расположение, и сделать так, чтобы рабочие станции ссылались на этот путь. Порядок создания подключенного сетевого диска описан .
Сообщество Dynamo постоянно развивается. Если периодически посещать портал Dynamo Package Manager, можно обнаружить там новые интересные разработки. В следующих разделах пакеты Dynamo будут рассматриваться более подробно и не только с точки зрения конечного пользователя, но и в контексте их самостоятельной разработки.
Файл pkg — это базовый текстовый файл, определяющий параметры пакета. Пока мы не будем его рассматривать.



