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

Last updated 1 year ago

您是否曾想过使用 Revit 中包含的数据查找内容?

如果您已经完成了类似以下示例的操作,则有可能出现这种情况。

在下图中,我们会收集 Revit 模型中的所有房间、获取所需房间的索引(按房间编号),最后在索引处抓取房间。

  1. 收集模型中的所有房间。

  2. 要查找的房间编号。

  3. 获取房间编号并查找它所在的索引。

  4. 获取索引处的房间。

练习:房间词典

第 I 部分:创建房间词典

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

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

现在,让我们使用词典重建这个想法。首先,我们需要收集 Revit 模型中的所有房间。

  1. 我们选择要处理的 Revit 类别(在本例中,我们处理的是房间)。

  2. 我们告诉 Dynamo 收集所有这些元素

  1. 我们将使用的数据是房间编号。

现在,我们将使用给定的键和元素创建词典。

  1. 节点 “Dictionary.ByKeysValues” 将根据相应的输入创建词典。

  2. Keys 需要是字符串,而 values 可以是多种对象类型。

最后,我们现在可以使用房间编号从词典中检索房间。

  1. String 将是用于从词典中查找对象的键。

  2. 现在,“Dictionary.ValueAtKey” 将从词典中获取对象。

第 II 部分:值查找

使用相同的词典逻辑,我们还可以使用分组对象创建词典。如果我们要查找给定级别的所有房间,可以按如下所示修改上图。

  1. 我们现在可以使用参数值(在本例中,我们将使用标高),而不是将房间编号用作键。

  1. 现在,我们可以按房间所在的标高对房间进行分组。

  1. 按标高对图元进行分组后,我们现在可以使用共享键(唯一键)作为词典的键,以及将房间列表作为元素。

  1. 最后,使用 Revit 模型中的标高,我们可以在词典中查找位于该标高的房间。Dictionary.ValueAtKey 将获取标高名称并返回该标高处的房间对象。

使用词典的机会确实是无限的。在 Revit 中将 BIM 数据与元素本身关联的功能可用于各种使用案例。

接下来,我们需要决定要使用哪些键来查找此数据。(键的相关信息位于部分中。)

  1. 基本节点和概念
  2. Dynamo 中的词典

Revit 使用案例

Previous代码块中的词典Next自定义节点和软件包
  • 练习:房间词典
  • 第 I 部分:创建房间词典
  • 第 II 部分:值查找
“什么是词典?”
12KB
roomDictionary.dyn