Интерфейс командной строки Dynamo
-o, -O, --OpenFilePath
: указание программе Dynamo открыть файл с командами по указанному пути и выполнить их. Этот параметр поддерживается только при запуске из DynamoSandbox.
-c, -C, --CommandFilePath
: указание программе Dynamo открыть файл с командами по указанному пути и выполнить их. Этот параметр поддерживается только при запуске из DynamoSandbox.
-v, -V, --Verbose
: указание программе Dynamo вывести все выполняемые вычисления в файл XML по указанному пути.
-g, -G, --Geometry
: указание программе Dynamo вывести геометрию из всех вычислений в файл JSON по указанному пути.
-h, -H, --help
: получение справки.
-i, -I, --Import
: указание программе Dynamo импортировать сборку как библиотеку узлов. Этот аргумент должен быть путем к одному файлу .dll
. Если требуется импортировать несколько файлов .dll
, укажите их через пробел: -i 'assembly1.dll' 'assembly2.dll'
.
--GeometryPath
: относительный или абсолютный путь к каталогу, содержащему ASM. Если этот параметр указан, то вместо поиска ASM на жестком диске будет выполняться загрузка непосредственно из этого пути.
-k, -K, --KeepAlive
: в режиме Keepalive не завершайте запущенный процесс Dynamo до тех пор, пока загруженное расширение не завершит его.
--HostName
: идентификация варианта Dynamo, связанного с главным узлом.
-s, -S, --SessionId
: определение идентификатора сеанса аналитики узла Dynamo.
-p, -P, --ParentId
: определение родительского идентификатора аналитики узла Dynamo.
-x, -X, --ConvertFile
: при использовании в сочетании с флагом -O
открывает файл .dyn
по указанному пути и преобразует его в файл .json
. Файл будет иметь расширение .json
и будет находиться в том же каталоге, что и исходный файл.
-n, -N, --NoConsole
: взаимодействие с командной строкой в режиме Keepalive без использования окна консоли.
-u, -U, --UserData
: указание папки данных пользователя, используемой PathResolver с командной строкой.
--CommonData
: указание общей папки данных, используемой PathResolver с командной строкой.
--DisableAnalytics
: отключение аналитики в Dynamo на время жизненного цикла процесса.
--CERLocation
: указание инструмента для создания отчетов об ошибках, находящегося на диске.
--ServiceMode
: указание запуска режима обслуживания.
Для чего?
Управлять Dynamo из командной строки можно по разным причинам, включая следующие:
автоматизация нескольких запусков Dynamo;
тестирование графов Dynamo (также обратите внимание на -c при использовании DynamoSandbox);
запуск последовательности графов Dynamo в определенном порядке;
создание пакетных файлов, которые используются для запуска нескольких экземпляров командной строки;
написание другой программы для автоматизации выполнения графов Dynamo и управления ими, а также для выполнения интересных операций с результатами этих вычислений.
Что?
Интерфейс командной строки (DynamoCLI) — это дополнение к DynamoSandbox. Данная утилита командной строки DOS/терминала предназначена для обеспечения удобства использования аргументов командной строки для запуска Dynamo. В первой реализации интерфейс не запускается автономно, его необходимо запускать из папки, в которой находятся двоичные файлы Dynamo, поскольку он зависит от тех же основных библиотек DLL, что и Sandbox. Интерфейс не взаимодействует с другими сборками Dynamo.
Существует четыре способа запуска интерфейса командной строки (CLI): из командной строки DOS, из пакетных файлов DOS и с помощью ярлыка на рабочем столе Windows, в путь которого включены соответствующие флаги командной строки. Спецификация файла DOS может быть полностью квалифицированной или относительной, поддерживаются подключенные диски и синтаксис URL-адресов. Его также можно создать с помощью Mono и запускать на Linux или Mac в окне терминала.
Утилита поддерживает пакеты Dynamo, однако загрузить пользовательские узлы (DYF) не удастся; можно загрузить только автономные графы (DYN).
На этапе предварительного тестирования утилита интерфейса командной строки поддерживает локализованные версии Windows, и вы можете указывать аргументы спецификации файла с помощью символов ASCII в верхнем регистре.
Доступ к CLI можно получить через приложение DynamoCLI.exe. Это приложение позволяет пользователю или другому приложению взаимодействовать с моделью оценки Dynamo путем вызова DynamoCLI.exe в командной строке. Результат может выглядеть следующим образом:
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -o "C:\someReallyCoolDynamoFile.Dyn"
Эта команда предписывает Dynamo открыть указанный файл в папке C:\someReallyCoolDynamoFile.Dyn без отображения пользовательского интерфейса, а затем запустить его. После завершения выполнения графа приложение Dynamo закрывается.
Новые возможности версии 2.1: приложение DynamoWPFCLI.exe. Это приложение поддерживает все, что поддерживается приложением DynamoCLI.exe с добавлением параметра «Геометрия» (-g). Приложение DynamoWPFCLI.exe доступно только для Windows.
Важные примечания
Предпочтительным способом взаимодействия с DynamoCLI является интерфейс командной строки.
На этот раз необходимо запустить DynamoCLI из папки установки [Версия Dynamo]. Интерфейсу CLI требуется доступ к тем же файлам DLL, что и программе Dynamo, поэтому его не следует перемещать.
Вы сможете запускать графы, которые в данный момент открыты в Dynamo, но это может вызвать непредвиденное поведение.
Все пути к файлам полностью совместимы с DOS, поэтому относительные и полные пути должны работать, но обязательно заключайте пути в прямые кавычки "C:path\to\file.dyn".
В настоящее время вывод STD не предусмотрен. Если ошибок не обнаружено, интерфейс CLI просто закрывается по завершении выполнения.
Как?
-o
— можно указать на файл DYN, чтобы открыть Dynamo в режиме без графического пользовательского интерфейса, в котором будет запущен граф.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -o "C:\someReallyCoolDynamoFile.Dyn"
-v
— этот флаг можно использовать, когда Dynamo работает в режиме без графического пользовательского интерфейса (когда мы использовали флаг -o
для открытия файла); данный флаг будет перебирать все узлы в графе и выводить их выходные значения в простой файл XML. Поскольку флаг --ServiceMode
можно использовать для принудительного выполнения программой Dynamo нескольких оценок графа, выходной файл будет содержать значения для каждого выполненного вычисления.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -o "C:\someReallyCoolDynamoFile.Dyn" -p "C:\aFileWithPresetsInIt.dyn" --ServiceMode "all" -v "C:\output.xml"
Выходной файл XML будет иметь следующий вид:
-g
— этот флаг можно использовать, когда Dynamo работает в режиме без графического пользовательского интерфейса (когда мы использовали флаг -o
для открытия файла); данный флаг будет генерировать граф и выводить результирующую геометрию в файл JSON.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoWPFCLI.exe -o "C:\someReallyCoolDynamoFile.Dyn" -g "C:\geometry.json"
Файл геометрии JSON будет иметь следующий вид:
Подлежит уточнению — находится в разработке
-h
— используйте этот флаг для получения списка возможных параметров.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -h
Флаг -i можно использовать несколько раз для импорта нескольких сборок, которые требуются для запуска открываемого графа.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -o "C:\someReallyCoolDynamoFile.Dyn" -i"a.dll" -i"aSecond.dll"
Флаг -l можно использовать для запуска Dynamo с другими региональными настройками. Однако обычно региональные настройки не влияют на результаты графа.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -o "C:\someReallyCoolDynamoFile.Dyn" -l "de-DE"
Флаг --GeometryPath можно использовать, чтобы указать среде DynamoSandbox или интерфейсу CLI на определенный набор двоичных файлов ASM. Используйте его следующим образом.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoSandbox.exe --GeometryPath "\pathToGeometryBinaries\"
или
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoSandbox.exe --GeometryPath "\pathToGeometryBinaries\"
Флаг -k можно использовать, чтобы не завершать запущенный процесс Dynamo до тех пор, пока загруженное расширение не завершит его.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -k
Флаг --HostName можно использовать для идентификации варианта Dynamo, связанного с главным узлом.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe --HostName "DynamoFormIt"
или
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoSandbox.exe --HostName "DynamoFormIt"
Флаг -s можно использовать для идентификации сеанса аналитики узла Dynamo.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -s [HostSessionId]
Флаг -p можно использовать для идентификации родительского идентификатора аналитики узла Dynamo.
C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -p "RVT&2022&MUI64&22.0.2.392"
Last updated