下载app免费领取会员
我们知道Dynamo作为可视化编程工具可以用来操控Revit中的元素,实现图元的批量创建、修改,提高工作效率。
想要在Dynamo中操控Revit元素,第一步需要在Dynamo中选择Revit元素,选择元素的节点有很多,大部分节点都位于Dynamo节点库中Revit菜单下的Selection子菜单里面,如下图所示。
当我们把一个Revit元素选择中进入Dynamo以后,实际上Dynamo会对这个元素进行“封装”(Wrap)。这就导致选择进Dynamo中的元素与它在Revit中的状态不同,如果这个时候直接在RevitAPI中使用这个元素,程序就会报错,如下图所示。(未解封,该元素无法识别为RevitAPI中的相应类的对象)
这个时候我们需要将导入进Dynamo中的元素进行"解封"(Unwrap),才能在RevitAPI中正常使用,如下图所示。
那么,为什么Dynamo要将选择进来的Revit元素进行封装呢?
原因是Dynamo的开发者在程序设计之初选择了“镜像”RevitAPI所有的类,这是为了使导入进Dynamo的元素除了具有RevitAPI中的方法以外,还能够在Dynamo中构建新的方法,提高Dynamo操控Revit元素的能力。虽然有点难以理解,但是大家在使用Dynamo的节点时是不需要考虑“封装”和“解封”的问题,因为Dynamo的节点会自动完成“封装”和“解封”的操作,如果需要调用RevitAPI的话则需要考虑。
本文版权归腿腿教学网及原创作者所有,未经授权,谢绝转载。