文章来源:BIM加油站
作者:泡椒侠
这几天小编在做个装配式项目,计算装配率并出装配方案。由于统计构件较多还要进行计算,于是我就想到了通过Dynamo来帮助我统计并计算,然后直接导出计算结果到Excel表格。
在这个项目中小编遇到个小问题那就是楼梯的体积统计。由于楼梯属于系统族,在属性栏中既没有面积也没有体积。所以Revit明细表中也只有通过材质来统计楼梯的体积。那么在Dynamo中我们就不能通过Element.GetParameterValueByName节点来获取到他的体积参数了。那这时我们应该怎么在Dynamo中获取楼梯的体积呢?
1、我们先通过Categories节点选择楼梯类别,再通过All Elements of Category节点将从revit中获取的楼梯类别转换成dynamo可识别的图元,通过Element.Geometry节点将图元转化为Dynamo中的Geometry。
如图:
2、这时我们将Revit中的所有楼梯图元都已经获取到Dynamo中来了,下一步我们将要计算出这些实体图元的体积。通过Solid.Volume节点获取出所有实体的体积。(注:由于Revit中的单位为毫米,所以这里获取到的体积都为立方毫米)由于Solid.Volume获取出来的体积是一个多维列表,这里我们将用List.Flatten节点进行降维处理。降维后我们用Math.Sum节点进行求和楼梯的总体积。
如图:
3、最后一步进行单位的转换,我们选择Convert Between Units节点选择体积转换,下面选择立方毫米转换为立方米。
如图:
4、进行数字的格式的设置,通过Math.Round节点设置你所需要的小数点后几位数。
如图:
评论0