Dynamo
Primer for v2.0
简体中文
简体中文
  • 关于
  • 简介
    • 什么是 Dynamo 以及它是如何工作的?
    • Primer 用户手册、Dynamo 社区和平台
  • Dynamo 设置
  • 用户界面
    • 工作空间
    • 库
  • 节点和导线
  • 基本节点和概念
    • 节点索引
    • 计算设计的几何图形
      • 几何图形概述
      • 向量、平面和坐标系
      • 点
      • 曲线
      • 曲面
      • 实体
      • 网格
    • 程序的构建块
      • 数据
      • 数学
      • 逻辑
      • 字符串
      • 颜色
    • 使用列表进行设计
      • 什么是列表
      • 使用列表
      • 列表的列表
      • n 维列表
    • Dynamo 中的词典
      • 什么是词典
      • 词典节点
      • 代码块中的词典
      • Revit 使用案例
  • 自定义节点和软件包
    • 自定义节点
      • 自定义节点简介
      • 创建自定义节点
      • 发布到库
    • 软件包
      • 软件包简介
      • 软件包案例研究 - Mesh Toolkit
      • 开发软件包
      • 发布软件包
      • Zero-Touch 输入
  • 适用于 Revit 的 Dynamo
    • Revit 连接
    • 选择
    • 编辑
    • 创建
    • 自定义
    • 记录
  • Dynamo for Civil 3D
    • Civil 3D 连接
    • 快速入门
    • 节点库
    • 样例工作流
      • 道路
        • 灯杆放置
      • 浇口面
        • 服务设施放置
      • 公共设施
        • 重命名结构
      • 轨道
        • 间隙包络
      • 勘测
        • 点编组管理
    • 高级主题
      • 对象绑定
      • Python 和 Civil 3D
    • Dynamo 播放器
    • 有用的软件包
    • 资源
  • 在 Dynamo 中编码
    • 代码块和 DesignScript
      • 什么是代码块
      • DesignScript 语法
      • 简写
      • 函数
    • 使用 DesignScript 的几何图形
      • DesignScript 几何图形基础知识
      • 几何基本体
      • 向量数学
      • 曲线:内插和控制点
      • 平移、旋转和其他变换
      • 曲面:内插、控制点、放样、旋转
      • 几何参数化
      • 相交和修剪
      • 几何布尔
      • Python 点生成器
    • Python
      • Python 节点
      • Python 和 Revit
      • 设置自己的 Python 模板
    • 语言更改
  • 最佳做法
    • 图形策略
    • 脚本编写策略
    • 脚本参考
    • 管理您的程序
    • 在 Dynamo 中高效处理大型数据集
  • 样例工作流
    • 快速入门工作流
      • 参数化花瓶
      • 吸引器点
    • 概念索引
  • 开发人员入门
    • 从源代码构建 Dynamo
      • 从源代码构建 DynamoRevit
      • 在 Dynamo 中管理和更新依赖项
    • 为 Dynamo 开发
      • 快速入门
      • Zero-Touch 案例研究 - 网格节点
      • 在 Zero-Touch 节点中执行 Python 脚本 (C#)
      • 进一步了解 Zero-Touch
      • 高级 Dynamo 节点自定义
      • 在 Dynamo 软件包中使用 COM(互操作)类型
      • NodeModel 案例研究 - 自定义 UI
      • 更新 Dynamo 2.x 的软件包和 Dynamo 库
      • 更新 Dynamo 3.x 的软件包和 Dynamo 库
      • 扩展程序
      • 为 Dynamo 2.0+ 定义自定义软件包组织
      • Dynamo 命令行界面
      • Dynamo 集成
      • 为适用于 Revit 的 Dynamo 开发
      • 发布软件包
      • 从 Visual Studio 构建软件包
      • 软件包形式的扩展
    • 拉取请求
    • 测试期望
    • 示例
  • 附录
    • 常见问题解答
    • 可视化编程和 Dynamo
    • 资源
    • 发行说明
    • 有用的软件包
    • 示例文件
    • 主体集成图
    • 下载 PDF
    • Dynamo 键盘快捷键
Powered by GitBook
On this page
Edit on GitHub
Export as PDF
  1. 开发人员入门
  2. 为 Dynamo 开发

Dynamo 命令行界面


  -o, -O, --OpenFilePath        Instruct Dynamo to open a command file and run the commands it contains at 
                                this path, this option is only supported when run from DynamoSandbox

  -c, -C, --CommandFilePath     Instruct Dynamo to open a command file and run the commands it contains at 
                                this path, this option is only supported when run from DynamoSandbox                      

  -v, -V, --Verbose             Instruct Dynamo to output all evaluations it performs to an XML file at this path

  -g, -G, --Geometry            Instruct Dynamo to output geometry from all evaluations to a JSON file at this path

  -h, -H, --help                Get some help

  -i, -I, --Import              Instruct Dynamo to import an assembly as a node library. This argument should be a 
                                file path to a single.dll - if you wish to import multiple dlls - list the dlls 
                                separated by a space: -i 'assembly1.dll' 'assembly2.dll'

  --GeometryPath                Relative or absolute path to a directory containing ASM. When supplied, instead of 
                                searching the hard disk for ASM, it will be loaded directly from this path

  -k, -K, --KeepAlive           Keepalive mode, leave the Dynamo process running until a loaded extension shuts it 
                                down

  --HostName                    Identify Dynamo variation associated with the host

  -s, -S, --SessionId           Identify Dynamo host analytics session id

  -p, -P, --ParentId            Identify Dynamo host analytics parent id

  -x, -X, --ConvertFile         When used in combination with the 'O' flag, opens a .dyn file from the specified 
                                path and converts it to .json. The file will have the .json extension and be 
                                located in the same directory as the original file

  -n, -N, --NoConsole           Don't rely on the console window to interact with CLI in Keepalive mode

  -u, -U  --UserData            Specify user data folder to be used by PathResolver with CLI

  --CommonData                  Specify common data folder to be used by PathResolver with CLI

  --DisableAnalytics            Disables analytics in Dynamo for the process lifetime

  --CERLocation                 Specify the crash error report tool located on the disk

  --ServiceMode                 Specify the service mode startup

原因

您可能出于各种原因而要从命令行控制 Dynamo,这些原因可能包括:

  • 自动执行多个 Dynamo 运行

  • 测试 Dynamo 图形(使用 DynamoSandbox 时,另请查看 -c)

  • 按特定顺序运行 Dynamo 图形序列

  • 编写运行多个命令行执行的批处理文件

  • 编写另一个程序来控制和自动执行 Dynamo 图形的运行,并利用这些计算结果执行一些很酷的操作

内容

命令行界面 (DynamoCLI) 是对 DynamoSandbox 的补充。它是一个 DOS/终端命令行实用程序,旨在为运行 Dynamo 提供命令行参数的便利。在第一次实现中,它不是独立的运行,它必须从 Dynamo 二进制文件所在的文件夹中运行,因为它依赖于与沙盒相同的核心 DLL。它不能与其他内部版本的 Dynamo 互操作。

有四种方法可以运行 CLI:从 Dos 提示符、从 Dos 批处理文件,以及作为 Windows 桌面快捷方式(其路径已修改为包含指定的命令行标志)。Dos 文件规范可以是完全限定的或相对的,并且还支持映射驱动器和 URL 语法。也可以使用 Mono 构建它,并从终端在 Linux 或 Mac 上运行。

该实用程序支持 Dynamo 软件包,但不能加载自定义节点 (dyf),只能加载独立图表 (dyn)。

在初步测试中,CLI 实用程序支持 Windows 的本地化版本,并且您可以使用大写 ASCII 字符指定 filespec 参数。

可以通过 DynamoCLI.exe 应用程序访问 CLI。此应用程序允许用户或其他应用程序通过使用命令字符串调用 DynamoCLI.exe 与 Dynamo 评估模型进行交互。这可能如下所示:

C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -o "C:\someReallyCoolDynamoFile.Dyn"

此命令将告知 Dynamo 在 “C:\someReallyCoolDynamoFile.Dyn” 打开指定的文件,而不绘制任何 UI,然后运行它。图形完成运行后,Dynamo 将退出。

2.1 版中的新功能:DynamoWPFCLI.exe 应用程序。此应用程序通过添加几何图形 (-g) 选项支持 DynamoCLI.exe 应用程序支持的所有内容。DynamoWPFCLI.exe 应用程序仅适用于 Windows。

重要说明

  • 与 DynamoCLI 交互的首选方法是通过命令提示符界面。

  • 此时,您需要从 [Dynamo 版本] 文件夹内的安装位置运行 DynamoCLI。CLI 需要访问与 Dynamo 相同的 .dll,因此不应移动它。

  • 您应该能够执行当前在 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 输出文件的格式如下:

    <evaluations>
        <evaluation0>
            <Node guid="e2a6a828-19cb-40ab-b36c-cde2ebab1ed3">
                <output0 value="str" />
            </Node>
            <Node guid="67139026-e3a5-445c-8ba5-8a28be5d1be0">
                <output0 value="C:\Users\Dale\state1.txt" />
            </Node>
            <Node guid="579ebcb8-dc60-4faa-8fd0-cb361443ed94">
                <output0 value="null" />
            </Node>
        </evaluation0>
        <evaluation1>
            <Node guid="e2a6a828-19cb-40ab-b36c-cde2ebab1ed3">
                <output0 value="str" />
            </Node>
            <Node guid="67139026-e3a5-445c-8ba5-8a28be5d1be0">
                <output0 value="C:\Users\Dale\state2.txt" />
            </Node>
            <Node guid="579ebcb8-dc60-4faa-8fd0-cb361443ed94">
                <output0 value="null" />
            </Node>
        </evaluation1>
    </evaluations>

-g 当 Dynamo 在无头模式下运行时(当我们已使用 -o 打开文件时)可以使用,此标志将生成图表,然后将生成的几何图形转储为 JSON 文件。

    C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoWPFCLI.exe -o "C:\someReallyCoolDynamoFile.Dyn" -g "C:\geometry.json"

JSON 几何图形文件将具有以下形式:

 TBD - Work in progress

-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 主机分析会话 ID

    C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -s [HostSessionId]

-p 标志可用于标识 Dynamo 主机分析父对象 ID

    C:\Program Files\Dynamo\Dynamo Core\[Dynamo Version]\DynamoCLI.exe -p "RVT&2022&MUI64&22.0.2.392"
Previous为 Dynamo 2.0+ 定义自定义软件包组织NextDynamo 集成

Last updated 1 month ago

DynamoCLI 是一项新功能,目前正在不断变化:CLI 目前仅加载标准 Dynamo 库的子集,如果图形未正确执行,请注意这一点。这些库在指定

此处