随着BIM技术在工程行业的普及,不少设备供应商也因此被拉下了水,一些项目的BIM实施细则就要求设备进场之前就必须提供设备的LOD400-500精度的BIM模型。BIM的精髓在于信息,做的再精细而没有信息的模型也只能当成“花瓶”来看。信息是模型的灵魂,毕竟有趣的灵魂才万里挑一。那么就来研究一下批量添加设备族参数信息。

思路是这样的:先从表格中读取参数名和相应参数值,根据读取到的参数名新建族参数,将参数值写入到对应的参数名中去。这看上去就和把大象放进冰箱那三步是一样的简单。

  1. 从excel表格读取数据

先把参数信息整理成如下图的表格:

用Data.ImportExcel从excel表格文件中读取数据,由于dynamo读取数据默认是按照行读取,并且第一行的表头是无效数据,所以通过List.RestOfItems只保留除第一行外的数据并进行行列转置List.Transpose将数据处理成需要的形式。

2.新建参数

新建参数用到的是Orchid节点包中的Parameter.AddParameter节点,分别配置输入端:用Orchid节点包中的Document.Current获取当前文档,第一步读取到的参数名,参数类型为文字,参数分组为文字,提示这里设置为空“”,非实例参数(即类型参数),非报告参数。

3.参数值写入

写参数值主要是用Parameter.SetValue,输入端分别输入:当前文档,当前文档的族类型,参数名,参数值。由于建参数和写参数存在先后的逻辑关系,建完参数后,才能写参数。这里用到的是DataStream.Await节点,同样位于Orchid节点包中,waitFor是先运行的等待的节点,pass的是后运行的被等待的节点。若没有此节点在写参数是程序会报错提示找不到该参数。

看一下运行效果:

同样的,可以用同样的方法批量添加共享参数。

补充一下:一开始我是想通过Parameter.CreateProjectParameter配合Element.SetParameterByName来实现此功能,发现并不奏效,因为用Parameter.CreateProjectParameter是在项目环境中创建的项目参数。这样做将族载入到项目中在项目环境下运行程序,看似参数名也加上了,参数值也写入了。但是添加的参数信息只能依附于当前的项目环境,并不能独立存在于其族环境。

好了,今天的文章批量添加族参数(上)实际是为单个族文件添加批量的参数就到这里,下次写一下批量添加族参数(下)为批量族文件添加单个参数。

欢迎阅读,分享,交流,批评指正。

如转载请注明出处,否则追究法律责任(说说而已,全靠自觉)。

获取族_批量添加族参数(上)相关推荐

  1. mac 恢复模式获取密码_如何在Mac上为所有网站获取暗模式

    mac 恢复模式获取密码 Khamosh Pathak Khamosh Pathak Now that macOS Mojave has a dark mode, wouldn't it be nea ...

  2. python读取pdf文档书签 bookmark_用Python为PDF文件批量添加书签

    平时看一些大部头的技术书籍,大多数都是PDF版的,而且有一些书籍是影印扫描版的,几百上千页的书,没有任何书签,想要找到一个章节的位置非常费劲.那么就想,能不能搞一个工具,来自动地为这些大部头的PDF书 ...

  3. plsql怎么批量添加数据_这些Excel批量操作技巧你还不知道?一秒钟处理上千数据...

    工作中我们经常用Excel处理数据,很多时候我们的效率之所不高,都是因为我们一直在做重复的工作,学会Excel批量处理技巧十分重要,可以为我们节省大把的时间,提高我们的工作效率.今天小编就来给大家分享 ...

  4. pdf批量添加图章_给PDF批量添加文本链接

    为了进一步补充说明文件中的一些重要内容,PDF文件的创建者会为一些文本创建链接,方便阅读者访问相关的网站,获取更多的信息. 我们可以通过使用pdfFactory文本链接功能来实现以上需求,另外,我们还 ...

  5. python给图片添加水印图片_使用Python编写批量添加图片水印程序

    文章目录 一.为什么要为图片添加水印 二.利用Python为图片添加水印 遍历文件夹下所有图片文件 三.利用QT for Python制作图片水印添加程序 一.为什么要为图片添加水印 在互联网写文章最 ...

  6. python图片水印软件_使用Python编写批量添加图片水印程序:一、代码方案

    一.为什么要为图片添加水印 在互联网写文章最头疼的一件事情就是发表的文章容易被抄袭,各种抄袭的手段真的是层出不穷.无奈,只能在不影响阅读体验的情况下不断地提高反抄袭的难度.虽然防不住,但是为文章中的图 ...

  7. 怎么接收layui上传的文件_layui 上传文件_批量导入数据UI的方法

    使用layui的文件上传组件,可以方便的弹出文件上传界面. 效果如下: 点击[批量导入]按钮调用js脚本importData(config)就可以实现数据上传到服务器. 脚本: /*** * 批量导入 ...

  8. 添加一列_办公软件操作技巧023:如何给excel数据批量添加单位

    在日常工作中,我们使用excel编辑电子表格时,经常需要给数据添加单位,单位是编制excel表格常用的元素,有时我们需要给一列数字都添加上单位,比如长度多少米,金额多少元,货物多少公斤等等,如果一个一 ...

  9. 实战教程!利用Python获取数据,并在地图上批量标注

    我们想要在地图上批量标注某一类的大量点位,该怎么操作呢?没有它的坐标数据,就没有办法批量标注.今天给大家介绍下,来自图新地球用户王泽的原创教程--利用Python获取数据,并在地图上批量标注的方法! ...

最新文章

  1. discuz,ecshop的伪静态规则(apache+nginx)
  2. 数学史上的哲学绝唱——无穷观与数学基础的争论
  3. 【SeeMusic】下载安装并注册 SeeMusic 软件
  4. mysql日期和时间类型_MySQL日期和时间类型
  5. Linux系统时间函数
  6. 方立勋_30天掌握JavaWeb_Servlet
  7. aspx、ashx、asmx文件处理请求效率比较
  8. 哎,最近心情非常烦乱!
  9. Java DOC 转换给 PDF 格式文档的代码
  10. python batchnorm2d_PyTorch中的BatchNorm2d层
  11. linux驱动编写(电源管理驱动)
  12. 【LOJ】 #2521. 「FJOI2018」领导集团问题
  13. ERP选型需把握主动权!
  14. 诺基亚 XGS-PON FTTP 系统在科威特完成测试
  15. win7 设置 快速启动栏
  16. Android距离传感器
  17. jena使用 java_【jena】 jena基本使用
  18. 安装vs2013出现此预许可证已过期--解决办法
  19. Codeforces 1129 E.Legendary Tree
  20. 安装busybox步骤

热门文章

  1. 这个只有1.5M的软件,能让你的网速快3倍
  2. nacos 配置_SpringCloud Alibaba之Nacos配置中心
  3. 星际战甲堕落轰击者结合目标_星际战甲-任务指南
  4. python装饰器 property_python装饰器--@property
  5. PyTorch基础-使用LSTM神经网络实现手写数据集识别-08
  6. cefsharp已停止工作_windows资源管理器已停止工作怎么解决
  7. mysql win10 5.5_win10上MySql5.5版本升级到5.7
  8. 使用sklearn来处理类别数据
  9. 六大设计原则之迪米特法则
  10. Foudation框架常用结构体和常用类