欢迎光临散文网 会员登陆 & 注册

Dynamo数据淘金——02//批量创建标高与图纸

2023-01-11 17:51 作者:非天生建筑师  | 我要投稿

本节给初学者介绍了通过列表进行批量创建标高与图纸的方法,其他内容也可以举一反三.文中对于节点的含义没做过分解读,大家多使用自然明白.可以通过右键搜索所需节点.批量创建标高与图纸并不是目的,而是让初学者理解大概逻辑,为后续大量的数据处理打下基础.为了便于理解,文中引入了一点概念.初次学习不理解也无妨,后续会慢慢感受其含义.

默认大家对BIM有基本了解,知道Dynamo的打开与节点创建操作.

1、打开Revit

首先新建一个建筑样板的项目文件,通过立面查看默认标高,默认生成了Level 1和 Level 2的标高,点击Level 2,可以看到属性中的一些参数,通过修改这些参数当然可以修改其属性.

比如通过修改立面高度参数,可以修改标高,但我们下一步打算使用Dynamo修改.

2、列表的概念

进行下一步之前,要引入一点概念.

我们要处理的数据如果以Excel表示,那么主要有两个基本单位构成--字符串(String)与数字(Number),数字可以进行算数运算与比较运算,字符串则可以进行合并\切割\替换等等.

字符串与数字这两个基本单位按照一定的逻辑组织在一起,形成了数据结构.这些数据结构主要有列表(List)、元组(Tuple)、字典(Dict)、集合(Set),这些是Python语言中的说法.目前,我们仅以列表(List)来描述Excel数据.

比如以下表格:

Excel的表格显示

在Excel表格中,每一行是一个列表(List),第一行可以表示成如下形式:

List_0 = [‘专栏名称’,’作者’,’适宜人群’,’评分’]

第二行可以表示成如下形式:

List_1 = [‘Dynamo数据淘金’,’非天生建筑师’, ’BIM设计师’,’100’]

再进一步,以List_0为例,列表中的每个内容称为元素(Item),比如’作者’.

由于列表中的内容是按照一定顺序排列的,因此每个内容(Item)在列表中有固定的位置,称之为索引(Index).比如’作者’在列表中的位置是第2个,索引(Index)理论上应该是2,但由于计算机是从0开始计数的,因此’作者’的索引(Index)是1, ‘专栏名称’的索引(Index)是0,依此类推.

知道了列中的元素(Item)与其对应索引(Index)的关系,就可以根据索引(Index)获得对应元素(Item),反之亦然.

List_0[1]---根据索引返回元素---’作者’

List_0[‘专栏名称’] ---根据元素返回索引---0

我们知道List_0与List_1共同组成了这个表格数据.如果我们用Dynamo的显示方式表达,则为:

Dynamo的列表显示

也就是说,Excel数据是通过嵌套的列表(List)进行显示的,整个表单(sheet)是一个大列表,然后里面有两个元素,每个元素又是一个小列表.我们要注意,Dynamo中列表的元素是纵向显示的,但其实对应Excel表格中的是一行,而不是一列.

3.建立节点

明确了这样一个大逻辑之后,我们开始进入Dynamo.初学者不明白节点也无妨,照着做就行.

按照图示分别建立以下节点(Categories—All elements of category—Elements.Parameters—String from object—Watch)

这样就获取了标高的属性列表.

我们试着修改一下两个标高的立面高度.

由于是两个标高,因此用列表的形式进行表达.改变元素属性使用Element.SetParametersByName节点.

[“立面”,”立面”]表示要修改的参数名称都是”立面”.

[-100,5000]表示分别对应的立面数值为-100,5000.

注意在Code Block节点中书写时,记得后面要分号.

点击运行即可完成修改(将模式改为手动).

恭喜,我们完成了第一步!

4.批量创建标高

修改标高的前提是建立标高,我们这就进入正题.我们找到创建标高的节点(Level.ByElevationAndName),通过名称与立面高度创建标高.

运行后,即创建了七个标高.

当然,要说比手动创建多么方便,也不能这么说,因为毕竟数量有限.但这个逻辑是很重要的.

默认创建的标高并没有创建对应的楼层平面,

我们加入节点FloorPlanView.ByLevel,即可完成楼层平面创建.

5.批量创建图纸

再下一步,同样可以批量创建图纸.按照图示节点,即批量完成图纸创建,且每个图纸上有一个楼层平面视图.

完成后的Revit界面如下:

实际上,数据量过大时,要以Excel文档形式输入输出才最高效,当然,我们这里只是学习的开始,知道列表这个概念即可.

Dynamo数据淘金——02//批量创建标高与图纸的评论 (共 条)

分享到微博请遵守国家法律