idea 批量修改同一列_两套办法,两个插件,BIM信息批量搞到Revit里

你好,这里是BIMBOX。

我们花了五期的时间给大家讲了BIM信息编码的知识,今天咱们把这些大话题放一放,给你讲一个具体的技术分享:怎样利用 Revit 实现快速编码。

Revit 项目绝大多数信息都是储存在族参数里的,无论你是自己编码,还是在甲方的要求下被迫营业输入编码,都必须把编码信息写到族属性的参数里。

今天我们会聊到两个方法和两个插件,帮你规范、快速的录入编码信息。

如果你不需要编码也没关系,通过后半段内容给你的免费插件,你能实现批量添加参数和批量填写族参数的方法,包括编码之内的几乎所有信息都可以高效处理。

1 Revit实现快速编码

第一部分的内容,来自于国药集团重庆医药设计院有限公司VDC中心小伙伴的分享,咱们先从编码聊起。

他们在做项目的时候,遇到族和类型命名的问题,就特别的痛苦。一个项目导出了族表格,想用数据软件来处理下,发现族和类型的名称五花八门,必须一个个重新命名。

虽然他们做了项目模版文件,可也挡不住建模人员修改的热情,加上很多外挂插件也会加载自有的族。

他们就琢磨怎样利用编码解决这个问题。

Revit 自身是有编码功能的,也就是族属性中的「部件代码」。它是一个族类型参数,附带还有一个对应的「部件说明」。只要选择了代码,相应的部件说明会自动填写,而代码如果写错,部件说明就不会出现。

下面这张图,左边是族类别属性,右边是点开的部件代码,可以在这里选择预置的代码参数,你也可以在明细表里面填写它。

a8607d81d01649e3b0193df53944d62b.png

目前这个代码使用的是 Uniformat 编码规则,但我们可以修改它,让它遵从我们自己的编码规则。

在 Revit 「管理菜单-其他设置」里,有这个部件代码的设置,打开后可以看到一个文件地址,默认为一个叫做 「UniformatClassifications.txt」 的文件。可以找到相应的位置,打开这个文件可以看出,部件代码的所有来源是这个txt文件。

2f9116b2f3eeb9177a5e615b5b746ff9.png

按照文件路径找到这个TXT文件,打开它可以看到这样的格式:

3a36f86511b8766514d7a1dcbb77de2e.png

这样看起来还是比较乱,也不太好编辑,你可以用 Excel 导入这个文本文档,运行 Excel 直接把它拖进去,就能看到标准的格式了。

d8edcaa5ae3ac2a41c8b0172bd12e44a.png

经过分析,这个文件一共有四列,分别是:

➤ 第一列表示编码内容,也就是部件代码。

➤ 第二列表示编码的类目名称,也就是部件说明。

➤ 第三列表示这编码所在的目录级数。

➤ 第四列是用 CODE 码的形式来表达族类别,一个 CODE 代表一个族类别。

知道了部件代码表的原理,接下来就可以把自己想要的的编码标准录进去了。

比如最近有个招标文件,业主在标书里注明构件要按《建筑信息模型分类和编码标准》GB/T51269-2017 进行编码,我们就先按这个标准来制作自己的编码文件。

2af71b7f0678cd5226864c961b713b2b.png

设计阶段应该应用14(元素)或者30(建筑产品)来进行编码,由于建筑产品编码实在太多了,所以我们利用表14:(元素编码)来制作这次的 Revit 部件代码。

当然,在你的实际项目中,可能用的是自己的编码规则,也可能是甲方强制要求的编码规则,在这里我们只讲通用的方法。

下面这张图是元素编码示例。

b0f8e346d0f23c3dc241aa8f7dac9347.png

14:表代码,对应第1

14-10.00.00:大类代码,对应第2

14-10.10.00:中类代码,对应第3

14-10.10.03:小类代码,对应第4

14-10.10.03.03:细类代码,对应第5

新建一个 Excel 表格,按照前面说的 Revit 的代码格式输入编码。

根据元素类编码的结构,编码级数分为5级目录,把层级编号分别填写到第三列。第四列是 Revit 中族类别的代码,我们找到了部分对应的代码,其实没有这个代码问题也不大,主要是填写代码的时候方便便于 Revit 按族类别筛选。

3e98c231ca51bbeffdccd46ffdccf039.png

找到的部分族类别对应的 CODE 码:

c41fff6b1fec8bfaeeb95843be47e963.png

如果你需要查找 Revit 完整的族类别 CODE 码,可以到下面这个链接查看:

http://bimextension.com/revit-builtincategory-enumeration-2018-3/

最终,把四列填写好,得到一个我们自己制作的部件代码表。

9819c1e9cbc8055c4adc0862bc0982fb.png

要让 Revit 正确识别,需要把表格导出为 TXT 文本文件,需要注意的是,另存的时候一定要选择 UNICODE 模式。最后在 Revit 「部件代码」中重新载入文件,显示如下:

f7773614cc244ab959ec9a4b3051b542.png

最后一步就是给 Revit 族录入编码,以矩形风管为例。选中图元,编辑类型,找到部件代码。进入菜单录入编码。

873d373417dcd824ca83de820d3519ca.png
617e0b9b9409533b08c87a5c4ed0cff5.png

这个部件代码文件里可以容纳不同编码方式,只要管理好代码的级别就行,希望各位有志之士能一起来合作把《建筑信息模型分类和编码标准》里所有的编码都录入。文末我们会附上重庆医药设计院有限公司VDC中心小伙伴制作的这份《建筑信息模型分类和编码标准》元素编码。

另外,在族编辑器里也有类似的东西,就是 Revit 自带的 OmniClass 编码,其实原理跟上面的部件代码一样,只不过这个是族参数,项目里里面无法编辑,只能在族编辑器中编辑。

04dc78d789b774d091bdcc1210d803b4.png

这个编码文件的位置如下:

C:甥敳獲YournameAppDataRoamingAutodeskRevitAutodeskRevit 20XXOmniClassTaxonomy.txt

同样利用上面编辑替换文件的方法,可以把 Revit 自带的 OmniClass 编码替换为自定义的编码,不过需要打开每个族来编辑,这个工作量不小。

说到这里小结一下,做这个工作是解决什么问题?

一开始我们说到项目族名称乱的问题,本质上就因为命名这个事太自由了。而刚才讲到的这两个东西,编码和部件名称是一一对应的,一旦编码填错,部件说明就无法正常显示。

e5087f19ad38fe10a539ae8de7d5f308.png
ec974fa2ecfb9dfeb4ff10bd8c7b3617.png

这样,我们只要通过检查「部件说明」这一项是否正确,就能反查代码是否填写正确,而不管族名称是否规范,保证这一项的规范填写,就能解决命名混乱的问题。比如我们之前给你讲的免费工具 Model Checker 就能自动完成这项任务。

不过,在实际项目里要大家一个一个区手动填写,还是挺费力的,有没有什么批量处理的方法呢?有的。

2 批量填写参数

后排犯困的小伙伴醒一醒,从这往下讲的方法,不止可以处理编码,也可以批量填写很多其他族参数,学会这个方法可以在很多方面节省时间。

在说批量编辑之前,你需要先搞懂类型参数实例参数的区别。

a99511e6b16c196b43b701b7679c4d8d.png

类型参数是同一个族参数值在项目里一改全都改,比如它的国标编码,前面我们说的「部件代码」就是一个内置的类型参数;

实例参数是同一个族在项目中不同位置可以有不同的参数值,比如同样一个门族的「安装日期」参数,在不同位置可以填入不同的数值。

首先我们要给项目里的族赋予参数,进入到每个族建立比较慢,你可以在 Revit 管理面板找到项目参数按钮,添加一个项目参数。

690eea801909e704f704e3559c88b064.png

这里创建一个叫「安装日期」的实例参数,可以通过右侧的过滤器,把这个参数赋给项目中的族,也可以选择全部,让项目中所有族都有这个参数。

7ee461f02d85323d2ca367c129bee252.png

批量编辑的第一步,就是创建明细表。你可以选择「多类别」,创建一整个项目的大表,也可以按类别创建。

c2643b05805c04ad763ce8217ba2c09e.png

以门表为例,分别放入「族与类型」字段,刚刚建立的「安装日期」的实例参数,以及前面讲到「部件代码」这个类型参数。

8530d1fcffdb712c81a292c22cec2bd9.png

对于实例参数安装日期,可以在明细表里随意输入,而对于类型参数部件代码,同一个族只要改一个就全都修改。

0d64b197d6fb7bef310935fb9a27c747.png

明细表和族参数是双向同步的,不过直接用 Revit 编辑表格效率还是比较低,我们可以使用 BIM One 插件把明细表导出成 Excel 表格,批量编辑好再导入回来。

界面比较简单,左边选择需要导出的表格,可以选择多张表,导出后会在 Excel 里分页合并,在 Export mode 里选择第二个(选中这个才可以编辑完再导入 Revit ),最后选择 Export。

071118622f1e5d1f4145642e7cb56c10.png

双击打开导出的表格,可以开始编辑数据。注意表格中有蓝色格子的列代表是类型参数,只能编辑白色格子内容,蓝色格子会自动变化;全白色的列代表是实例参数,可以随意编辑。

70bf66f3e6f3151c11ad8ea5fdf89325.png

编辑完成,通过插件的导入(Import)功能,把表格导入到 Revit ,就完成了明细表的批量编辑。

2ff682f7d4a70a14733b172a1487d410.png

明细表对应的族里都已经填好了参数值。

f43d68d23ec34d3124b43afaec5e15d0.png

这个插件的安装包我们也会在文末给你提供。

3 批量创建参数

到这儿,我们完成了族参数的批量修改,我们最后发散一个关于批量创建参数的小知识。

上一个案例我们是通过项目参数功能批量创建参数的,如果你希望建立自己的族库,把参数都留在族里而不是项目里,能不能批量给一些族创建参数呢?

这还得用到一个插件:Transfer Family Parameters

首先,你需要在一个族里建立一个参数,比如我们建立一个叫「专业负责人」的实例参数,为了能用 Excel 批量编辑,需要把它设置成共享参数。

f49b9dc9dea72a6d6a01a3a800153aad.png

使用这个插件,你只需要把这个写好参数的族载入到项目里,在插件面板左侧选中这个族,并选中需要传递的参数(可以单选也可以多选),然后在右侧选择接收这个参数的族,就能把参数批量传递给这些族。

418dfe26e45592e3b798d227b1a0c8bb.png

这样,被传递的族里也都有了选中的参数。

41cc4dd611d16f7517ddf8eb18e7c7ad.png

不过,这个插件有两个问题,第一是带有公式的参数不能传递,第二是所有共享参数在传递给其他族的时候会变成族参数。

9dca837f9e1e1fec6bb81d1c132d4e6c.png

第二个问题比较要命,因为传递后的参数不再是共享参数,就没办法进入到明细表里,也就没办法用上一个插件实现批量编辑参数了。

于是,今天说到的两种个插件,一种批量填写族参数(可以创建项目参数),一种批量创建族参数,是没法形成一个流程闭环的,只能根据你的需求二选一。

当然,如果你会 Dynamo ,那实现 Revit 和 Excel 表的双向同步就比较容易实现了。@VCTCN93 在他的 Dynamo 入门课 里就讲到,把信息从 csv 数据格式,通过 Dynamo 直接录入到 Revit 中,感兴趣的话你可以去看看。

今天我们讲到了不少东西,希望能在编码和数据批量处理方面帮你打开一扇大门,再次感谢国药集团重庆医药设计院有限公司VDC中心小伙伴的分享。如果你有更好的方法,也欢迎联系我们。

今天内容谈到的编码成果和插件安装包,我们已经帮你准备好了,在公众号对话界面回复关键词「批量编码」就能获取它们。

有态度,有深度,BIMBOX,咱们下次见!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值