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 Player
    • 有用的软件包
    • 资源
  • Forma Beta 版中的 Dynamo
    • 在 Forma 中设置 Dynamo Player
    • 在 Dynamo Player 中添加和共享图形
    • 在 Dynamo Player 中运行图形
    • Dynamo 计算服务与 Desktop 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 集成
      • 为 Dynamo For Revit 开发
      • 发布软件包
      • 从 Visual Studio 构建软件包
      • 软件包形式的扩展
    • 拉取请求
    • 测试期望
    • 示例
  • 附录
    • 常见问题解答
    • 可视化编程和 Dynamo
    • 资源
    • 发行说明
    • 有用的软件包
    • 示例文件
    • 主体集成图
    • 下载 PDF
    • Dynamo 键盘快捷键
Powered by GitBook
On this page
  • 定义目标
  • 后续步骤
  • 使用导线连接节点
  • 执行程序
  • 添加 “代码块”
  • 使用序列
  • 使用“直接操纵”调整
Edit on GitHub
Export as PDF
  1. 样例工作流
  2. 快速入门工作流

吸引器点

Previous参数化花瓶Next概念索引

Last updated 2 months ago

吸引器点非常适合试验几何图案。它们可用于根据对象的距离创建这些对象的渐变。

此工作流将指导您如何操作:

  • 创建、管理和编辑列表。

  • 在三维预览中,使用直接操纵移动点。

  • 更改执行模式。

定义目标

在本练习中,我们要创建一个圆(“目标”),其中半径输入由距邻近点的距离定义(“关系”)。

定义基于距离关系的点通常称为“吸引器”。此处,将使用距吸引器点的距离来指定圆应该有多大。

后续步骤

单击下面的链接下载示例文件。

可以在附录中找到示例文件的完整列表。

现在,我们已经绘制了“目标”和“关系”,可以开始创建图形。我们需要节点来表示 Dynamo 将执行的操作序列。首先,我们添加以下节点:“Number”、“Number Slider”、“Point.ByCoordinates”、“Geometry.DistanceTo”、“Circle.ByCenterPointRadius”。

  1. “输入”>“基本”>“Number”

  2. “输入”>“基本”>“Number Slider”

  3. “几何图形”>“点”>“点”>“By Coordinates(x,y,z)”

  4. “几何图形”>“修改器”>“几何图形”>“DistanceTo”

  5. “几何图形”>“曲线”>“圆”>“ByCenterPointRadius”

使用导线连接节点

现在,我们有几个节点,我们需要将节点端口用线连接起来。这些连接将定义数据流。

  1. “Number” 连接到 “Point.ByCoordinates”

  2. “Number Sliders” 连接到 “Point.ByCoordinates”

  3. “Point.ByCoordinates” (2) 连接到 “DistanceTo”

  4. “Point.ByCoordinates” 和 “DistanceTo” 连接到 “Circle.ByCenterPointRadius”

执行程序

在完成定义程序流后,我们只需告知 Dynamo 执行它即可。在执行程序(“自动”或在“手动”模式下单击“运行”)后,数据将流经这些线,并且我们应该可以在三维预览中看到结果。

  1. (单击“运行”)- 如果“执行栏”处于“手动”模式,则需要单击“运行”才能执行图形

  2. 节点预览 - 将鼠标光标悬停在节点右下角的框上会弹出结果

  3. 三维预览 - 如果有节点创建几何图形,我们将在三维预览中看到它。

  4. 创建节点上的输出几何图形。

添加 “代码块”

如果程序正常运行,我们应该会在三维预览中看到一个穿过吸引器点的圆。这很棒,但我们可能想要添加更多详细信息或更多控件。我们将调整对圆节点的输入,以便可以校准对半径的影响。将另一个 “Number Slider” 添加到工作空间,然后双击工作空间的空白区域以添加 “Code Block” 节点。编辑“Code Block”中的字段,以便指定 X/Y。

  1. Code Block

  2. “DistanceTo” 和 “Number Slider” 连接到 “Code Block”

  3. “Code Block” 连接到 “Circle.ByCenterPointRadius”

使用序列

简单开始后增加复杂性是循序渐进开发程序的有效方法。在一个圆正常工作后,让我们将程序的强大功能应用于多个圆。如果我们使用点栅格(而不是一个中心点)并适应结果数据结构中的变化,那么程序现在将创建多个圆 - 每个圆的唯一半径值由距吸引器点的校准距离进行定义。

  1. 添加 “Number Sequence” 节点并替换 “Point.ByCoordinates” 的输入 - 在“Point.ByCoordinates”上单击鼠标右键,然后依次选择“连缀”>“叉积”

  2. 在“Point.ByCoordinates”后添加 “Flatten” 节点。要完全展平列表,请将 amt 输入保留为默认值 -1

  3. 三维预览将使用圆栅格进行更新

使用“直接操纵”调整

有时,数字操作并不是正确的方法。现在,可以在后台三维预览中导航时手动推拉点几何图形。我们还可以控制由点构建的其他几何图形。例如,“Sphere.ByCenterPointRadius” 也可以直接操纵。我们可以使用 “Point.ByCoordinates”,通过一系列 X、Y 和 Z 控制点的位置。但是,使用“直接操纵”方法,可以通过在 “三维预览导航” 模式下手动移动点来更新滑块的值。这提供了一种更直观的方法,来控制一组用于标识点位置的离散值。

  1. 要使用 “直接操纵”,请选择要移动的点面板 - 箭头将显示在选定点上。

  2. 切换到 “三维预览导航” 模式。

  1. 将光标悬停在点上,X、Y 和 Z 轴将显示。

  2. 单击并拖动彩色箭头以移动相应的轴,“Number Slider” 值将使用手动移动的点实时更新。

  1. 请注意,在 “直接操纵” 之前,仅有一个滑块连接到 “Point.ByCoordinates” 组件。当我们在 X 方向上手动移动点时,Dynamo 将自动为 X 输入生成新的 “Number Slider”。

35KB
DynamoSampleWorkflow-Attractors.dyn
手绘圆