Rhino的强项在于生成复杂几何形体,这在Grasshopper的扩展工具集中体现地淋漓尽至。而Dynamo要想在这方面跟Grasshopper做到类似程度,还有很长很长的路要早,因为创建自由几何形体并不是Revit的强项。Revit出色之处在于管理建筑信息,而且Dynamo可以在这方面让Revit做得更好。
这里提供三个案例,可以展示Dynamo在建筑信息管理方面的出色能力。
1. 创建智能、自我调节的建筑模型
在建筑项目中,我们经常要在空间、几何形体、模块功能之间创建一些简单的逻辑关系。比方说,一个办公室的大小决定了可以放置多少张办公桌。同时,这也决定了办公室人员密度。根据建筑规范或者设计规范,这些因素又决定了应该使用何种类型的房门。
在某项目中,我们有这样一条规则:如果办公室超过一定大小,房门必须加上安全锁。通常这件事情是手工完成的 - 手工计算一个房间中有多少张办公桌,据此决定是否使用有安全琐的门 - 繁琐而容易出错。其实这个任务可以用Dynamo自动化起来。Dynamo可以确定每个门与哪个房间关联,计算该房间内有多少家具,然后把家具数量写到门的一个自定义参数上。有了这样的信息,我们就可以据此设计门族(door family)的行为,使之根据参数来选择正确的门锁类型。如果房间大小变化了,或者家具的排布变化了,我们都可以重新运行Dynamo脚本,更新所有的门锁设置。
把门的类型和周围家具数量联系起来,我们其实是在利用BIM数据,让建筑构件获得更多的周围环境信息,从而表现地更加“智能”。这种方法可以被用在很多常见问题上。比如说,复核一个房间是否有合适数量的门窗或电器设备以满足光照和通风要求。
2. 自动化数据录入和文档编制
虽然Revit非常强调全方位的建筑信息,可它自身提供的数据录入工具实在非常有限。在Revit中作批量编辑通常是件很痛苦的事,特别是跟Excel的数据处理能力相比,更是一声叹息。这也可以解释为什么有那儿多受欢迎的Revit插件,全是用来跟Excel表格交换数据的。
问题是,并非所有的建筑信息数据都可以转化成一张Excel二维表格。比如说,我们经常需要在一张楼层平面图上对大量的房间作命名和标号,而依据的是它们的排列顺序。这种空间信息其实从几何上很容易理解,却很难转化成数据表格进行处理。
为了解决这个问题,我们开发了一个Dynamo脚本。设计师只要在平面图上画一根路径,穿过所有需要命名的房间,Dynamo就可以依次对每个房间进行顺序的命名和编号。用户也可以选择在处理中跳过某些特定名称的房间,比如大堂或走道。如果在设计过程中有房间发生调整,只要重新运行这个脚本就行了。
这个动画中,我们画了一根穿越一系列房间的曲线。当运行Dynamo脚本后,所有的房间都会依次序编号。同时我们在脚本设置中明确跳过了环形走道。
3. 提升设计质量
下一个脚本会抽取一些Revit外部工具无法取得的数据。在建模过程中,Revit的一些建筑构件会丢失它们的主体信息,以至于最后有成千上百个悬空的灯具或水管配件。没有任何内置的工具可以检查丢失主体的物体,但是我们可以使用Dynamo来抽取这一信息,并且写到一个自定义的项目参数里。这样,建筑构件的主体信息就可以在清单中查看,成为我们在建模过程中做质量检查的一个步骤。
该Dynamo脚本会把主体信息写到一个自定义参数中,并且在清单里显示出来。这里Dynamo没有改动任何的模型数据,只是作为信息提取工具。
最后的清单清晰地显示了那些悬空构件,这些都是在建模过程中要更正的错误。
清单一直是Revit用户的重要工具,可以分析建筑模型和追踪错误。遗憾的是很多构件信息没有在Revit清单功能中开放出来,而Dynamo可以帮助抽取这些数据,组织成有意义的格式,并且添加到Revit清单中。
|
看看Revit内部有什么
Dynamo提供给设计师一些Revit内部的东西,让用户可以在不借助API编程的情况下开发Revit插件。这使得用户可以更加轻松地定制自己的Revit,而不用先花两年时间学习怎么写代码,编译和调试。
如果发现Dynamo自带的结点无法满足需求,Dynamo还允许我们用Python脚本直接调用所有的Revit API。这跟Autodesk以往的做法有很大不同。以前“易用性”被定义为用户无需更多的定制化即可顺利使用软件。现在的“易用性”则是指定制化可以有多方便。
很长一段时间以来,Dynamo一直被诟病为Grasshopper的粗劣仿制品。在CASE咨询公司,我们发现,如果把Dynamo和Revit的优势领域结合起来,可以显著提高工作效率。现在我们有了很好的机会定制Revit,使之更符合我们的需求。我们也希望Dynamo能帮助大家思考,如何让Revit成为一个建筑信息管理的优秀平台。
|