BIM | 百科——用Dynamo直接调用Civil3D的导出数据Civil Report生成高架桥
2017-04-27
韩兰若
2141

【4月17日,成都/长沙】柏慕联创联合一砖一瓦推出BIM系统实战新课程(土建/机电,22天)



获取《每日一技,我的成长轨迹》汇总

· 请访问柏慕联创官方网站: www.lcbim.com ·


声明:本文已获原作者授权,版权归原作者所有,转载请注明出处

上回书说道我要放弃bridge这个包,自己开发Node。然而并没有,因为我又发现了一个新的包暂时很好用。可以直接调用civil 3D的civil report,不用做任何数据整理,生成桥的路面等。接下来我们来介绍一个这个包的用法。

首先这个包叫做BIM4Struc,可以在dynamo里搜到。第一个要用的Node叫01 Bridge Superstructure Creation。

这个node长这样:


我们新开一个mass family,选择manage, 选择dynamo,打开这个Node. 这里我把它修改为01 bridge slab creation。

第一步,先调用数据。怎么用civil3D生成civil report 我之前已经讲过,这个不做介绍了。在Excel Input 这组里,直接在file path 里选择你保存好的那个civil report。

打开civil report, 我们要填写一些代码。如下图所示。这个node贴心之处在于,不像上一个包一样所有的调用方式都在程序里内定了,你要么更改程序,要么乖乖把数据结构改成程序指定的样子;这个包里,你可以直接指定你要调用哪个数据。我们一行一行看:

1. 选择表,刚才file path 选了

2. 选择你要调用的那个标签,这里是civil report

3. 选择从第几行开始读数据,默认是15,这里我去掉了原始报告的空行,所以是2.

4. 选择X坐标所在列。这里强调第一点:装列的list 从0开始计数,所以第一列是0;强调第二点:civil report报告默认顺序是Northing 在前,Easting 在后,但是Northing 是Y坐标!我第一次就弄错了,所以这里填3。Y、Z同理。

5. 选择描述所在列。然后依次填入左、中、右 点的描述。

6. 输入单位转换。

好数据调用完毕,接着走,看下一步。桥的中心线变量。输入站数,偏移量等等。

接着要调用revit family了。

这个family怎么制作呢?这里稍微有点麻烦。

首先开mass family。 为什么用mass family 呢,因为它是用点和线制作任意模型的,有普通family没有的灵活性。然后画一些参照平面,并且加约束,定义约束变量名,并定义为实体变量。这里注意:变量名在整个程序里必须统一。

需要定义的变量有道路宽度,超高,涂料厚度,桥面厚度等。全部定义好以后,选择建模,选择点。在参照平面交界处点上点。如下图所示。

全部点好以后,选择spline through points 把点连起来。注意:连起来的方法是,先选择相邻两点,再点击连线。一次只能连两个点,否则会生成空间曲线。

全部做好以后长这样,红框里有一个多出来的点,干嘛的呢,是因为路面后面要铺沥青什么的,所以水泥板这里的中点不是最后的高度,要留出铺面的距离。

要用公式定义一下变量之间的关系。看不清的话我再输入一遍,以右面为例:

superelevation right = Lane Width Right * Right Lane Slope;

y sup right = 1000 - superelevation right

这里Right Lane Slope 和 Lane width right 都会在dynamo里计算出做为input。

做好以后保存为mass_Slab, 把这个族插入刚才新建的那个mass family,然后回到刚才Dynamo那里就可以调用了。

接下来是计算这个桥板的相关参数,就像刚才说的,坡度和宽度。具体算法参见代码。在code block里面,输入你刚才定义的关于坡度和宽度的变量名。

至此,自定义的部分结束,可以点击运行了。程序跑完以后模型如下:

一眼望不到头。这里还没完,这个路面左右两边还有一些走道什么的,还要继续创建revit family。这里注意:创建其他族的时候,要保留初始定义族里的全局变量不变。比如,创建右侧走道的时候,要保留 lane width right , premix thickness, y sup right 等这些约束条件,不能改变位置或者定义。新建的family要在这些初始约束的基础上做。

然后我新建了一个node, 叫做02 walkway creation. 其实也可以不新建,直接在superstructure creation的基础上添加你需要添加的所有构件。我是为了做教程逻辑清晰,所以分成了不同的node。

在这里我复制出一套引入revit 族的代码,然后合并在一起赋值给list。然后分别选择刚才新建的族:左走道,右走道。你可以根据具体要求,有几个复制几个。

其他的没什么改的。点击运行。跑出来结果如下:

保存为slab model. 这次的教程就讲完了。撒花~

下次预告:利用Dynamo自动放置桥墩桥柱。欢迎继续关注。








柏慕联创BIM技术服务

BIM设计 | BIM咨询 | BIM培训 | BIM人才

· 点亮建筑新梦想 ·





来源:知乎
写下你的评论吧