首页 理论教育 Revit设计软件:批次排版视图-制图实践

Revit设计软件:批次排版视图-制图实践

时间:2023-11-06 理论教育 版权反馈
【摘要】:3)分步说明打开项目“范例文件.rvt”或已含有视图并编辑好视口的项目文件,运行Dynamo 并打开范例文件“07批次排版视图.dyn”。图4.33Dynamo 节点范例调用“Categories”和“All Elements of Category”取得所有视口。图4.34获得视口及位置信息调用“Viewport.SetLocationBasedOnOther”节点,有两组信息需要输入。4)实现目标如图4.35 所示,运行脚本后即可经图纸中视口文件快速排版。图4.35批量排版所有视口图4.36成果范例Revit VS Dynamo

Revit设计软件:批次排版视图-制图实践

1)设定目标

根据视图创建图框后的下一步就是视图排版。在上一步命令中,视图已经在图框创建过程中置入了图框界面,但位置是比较随意的。Revit 中的排版内容包含天地墙以及各种细节。以天地来说,包含平面、由平面衍生出的各种平面配置图以及天花平面,通常做法是先用范围框(scope box)定义视图的裁剪区域(crop region),这个裁剪范围可简称为视口。为了确保相应平面及天花的显示范围相同,排版时手动选择每一个平面、平面配置及天花图,再用视口的定位点将其在图纸中定位。这样就能确保每张图的平面位置完美对齐,可概括性地称之为“单一视口多图框排版”。这些过程都异常烦琐乏味,这一节的脚本即是要简化这一流程。

由于项目之间平面范围、轮廓大不相同,不适宜简单地以图纸中心点为视口定位。最简单的方法就是直接选择一张图纸,将视口调整到满意的位置,然后剩余视口只需要遵循同样的坐标排版就行了。因此,这一节的脚本就根据这种“父视口子视口”的逻辑架构来进行编写。

2)节点思路

从项目文件中取得视口表单,既是视图的范围框也是裁剪区域。从中选出已经在图纸中排版完成的视口作为父视口,其余视口作为子视口。再将子视口的位置与父视口匹配以达到排版的目的。需要再次强调的是,这个命令只有视口范围相同时才会有效匹配。所以,在脚本编辑前需要到项目文件中设置好范围框及视图的裁剪区域,即确保相应的平面及天花有统一的视口范围。脚本节点群组主体结构如下:

①获得所有视口。

②获得父视口及子视口集的位置。

③匹配子视口到父视口。

3)分步说明

(1)打开项目“范例文件.rvt”或已含有视图并编辑好视口的项目文件,运行Dynamo 并打开范例文件“07批次排版视图.dyn”(见图4.33)。

图4.33 Dynamo 节点范例(www.xing528.com)

调用“Categories”和“All Elements of Category”取得所有视口。范例中将列表中的第一视口首先做了排版,因此可直接引用“List.GetItemAtIndex”取得视口表单的第一个分享,并连接到“Viewport.LocationData”。运行脚本查看上方“Viewport.LocationData”的下拉列表,包含一个范围框、范围框中心点以及范围框4 个点的坐标,以范围框中心点为参照,数值为X=347.350,Y=285.733,Z=0。调用“list.RestOfItems”取得所有剩下的视口,同样连接到“Viewport.LocationData”。运行脚本查看下拉列表,产生了4 个视口信息,依旧以范围框中心点为例,第一个视口中心点为X=245.799,Y=185.613,Z=0,第二个视口中心点为X=64.400,Y=237.485,Z=0,第三、第四由于图幅原因无法完全显示。不过可以预见的是,中心点位置、边框位置都不会相同,因此项目文件中这些视口也如这些坐标显示一样散乱地分布在图纸上(见图4.34)。

图4.34 获得视口及位置信息

(2)调用“Viewport.SetLocationBasedOnOther”节点,有两组信息需要输入。parentViewport 处连接作为排版标准的父视口,childViewports 处则连接需要进行匹配和排版的子视口集。这两组数据在上一组节点组合中都有获得,分别连接后运行脚本。childViewports 输出的即是重新排版后的子视口集,检查下拉列表,会发现中心点坐标已经变成与父视口一致。

4)实现目标

如图4.35 所示,运行脚本后即可经图纸中视口文件快速排版。可尝试在更复杂的项目文件运行该脚本,在大量的视口元件中通过已经介绍过的逻辑判定及列表编辑命令将视口过滤分类,并排版(见图4.36)。

图4.35 批量排版所有视口

图4.36 成果范例 Revit VS Dynamo

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈