Dynamo For Revit: 图形转化为 DirectShape

前言

可以通过 DirectShape 把 Dynamo的几何图形导入到 Revit,但是可能会出现数据的损失。本文以圆柱体为例。

内容

在 Dynamo 里面创建一个简单的圆柱体,然后用过节点 DirectShape.ByGeometry 将它导入 Revit。左边是 Dynamo 原生的几何图形,右边是导入 Revit 然后再用 Element.Geometry 从 Revit 中读取几何数据的结果。把他们炸开,可以看到效果已经完成不同了。
Dynamo For Revit: 图形转化为 DirectShape

总节点图

Dynamo For Revit: 图形转化为 DirectShape
可以看到 Dynamo 的原生图形只有 3 个面,而转化成 Revit 的构件,再读取出来,已经变成了 148 个面。并且这148个面实际上都是三角形。
Revit API 开发 (9): BRepBuilder 创建原生几何图形 可知, Revit 是可以创建圆柱体的,虽然不是 3 个面,但也只需 4 个面。由此可以得出结论,Dynamo 将图形变成 Revit 的 DirectShape 时,应该是直接转化成了三角面片。

结论

如果想要制作精确的图形,不能直接用 DirectShape.ByGeometry,否则结果可能不是你所需要的。

Tips

节点图中的自定义节点:
Dynamo For Revit: 图形转化为 DirectShape