王明燕
(西南交通大学,四川成都 610031)
随着现代计算机技术的飞速发展,“参数化”建模的设计概念也被越来越多的运用到了设计领域。对于异形建筑和复杂的曲面造型,通过单一的函数关系式已难以确定,参数化建模的引入将建筑设计方法推向了新的阶段[1]。
Rhinoceros(犀牛)软件是由美国Robert McNeel & Associates 公司于1998年开发的一款基于PC平台的强大的专业3D造型软件[2]。Grasshopper是Rhinoceros中一款新兴的编程插件,它所具有的可视化编程方式,不需要使用者掌握专业的编程知识,只需通过可视化的节点连接操作即可达到设计师想要的结果,为用户提供了以计算机程序的逻辑来组织模型创建和调控操作。本文根据凯威特网壳的结构特点,采用Rhinoceros的Grasshopper插件提出了一种凯威特单层球面网壳的参数化建模方法,通过改变参数的数值,就能对网壳进行快速变换。
Grasshopper是基于Rhino平台的可视化编程插件,其工作界面如图1所示,主要由主菜单栏、运算器面板、工具栏、工作区以及状态栏5个部分组成。
图1 Grasshopper工作界面
其工作原理是将操作命令封装为块,形成一个个像电池块的运算器,电池块的左端连接输入条件,右端输出经过处理后的数据信息,图2给出了一个通过三轴坐标确定空间点位置的运算器,运算器左端有3个输入端口,分别输入空间点的X坐标、Y坐标和Z坐标;右端有一个输出端口,输出定义的空间点。运算器既可以表示对象或数据,也可以表示二者间的关系及处理,在运算器之间通过连线来表示数据传输[3]。
图2 空间点定义命令的运算器
参数化设计是一种基于算法思维的过程,它支持使用参数和规则进行表达,并对设计意图和设计响应之间的关系进行定义、编码和澄清[4]。目前国内已有若干建筑采用参数化的设计分析,并取得了较好的效益。杭州奥体博览城主体育场(图3)在设计初期时,建筑师就采用Grasshopper插件生成整个罩棚和结构的方案模型,利用参数化工具,可以随时根据结构的受力,对结构的跨度及杆件数量等进行调整, 整个过程动态、可逆,大大提高了工作效率。港珠澳大桥珠海口岸大屋顶(图4)是口岸区2座核心建筑的连接纽带,设计师通过对Grasshopper 插件进行二次编程开发,实现了大屋顶从初始参数到最终造型的无缝衔接,使得设计工作更加的简便快捷。
图3 杭州奥体博览城主体育场
图4 港珠澳大桥珠海口岸大屋顶
采用Grasshopper 插件进行凯威特单层球面网壳的建模,能快速构建出不同参数的模型,便于后续参数化分析,提高工作效率。现将其参数化建模过程介绍如下。
建立凯威特单层球面网壳首先要确定4个输入参数:网壳跨度L、网壳矢高h、网壳扇面数k以及网壳环向杆件的圈数n,如图5所示。每个参数的改变都会对网壳结构及力学性能产生影响,因而在建模前需对输入参数进行确定,并将其放置于同一区域以便后续修改。
图5 参数区电池
凯威特单层球面网壳结构关于径向主脊线对称分布,主脊线的确定是进行网壳建模的重点。网壳依附于球体进行建模,在球心平面建立网壳半跨度长的平面直线,选择Project运算器,将平面直线投影到球面上,形成网壳径向主脊线。然后通过Divide Curve运算器对径向主脊线进行等弧长划分,划分的数目为参数区中环向杆件的圈数,图6给出了径向主脊线确定及划分的算法,图7为径向主脊线示意。
图6 径向主脊线确定及划分算法
图7 径向主脊线示意
提取径向主脊线等分点的X坐标,利用Circle运算器生成各点在水平面对应的圆,根据所设置的扇面数,本文中扇面数为6,先截取一个扇面(即1/6圆)进行杆件建模,通过Sub Curve运算器可实现上述功能。因主脊线顶点对应水平面不会生成圆,运用Cull Index运算器设置索引可将顶点删除,算法过程如图8所示。将生成的平面曲线投影到球面上即为网壳的一扇环向杆件,但为了便于生成斜向杆件的连接定位点,在此未进行投影,如图9所示。
图8 生成一扇环向杆件算法
图9 一扇环向杆件的平面曲线
基于已经建成的一扇环向杆件的平面曲线,运用Divide Curve运算器进行曲线的分段操作,生成有规律的曲线分段点便于斜向杆件的连接,值得注意的是,环向杆上分段点为等差数列分布,可通过Series运算器实现。将分段点通过Project Point运算器投影到球面上,利用相邻两圈节点间数据结构的逻辑规律完成斜向杆件的连接,过程中为了避免由于算法造成的边界节点和杆件的重复,运用了多次Cull Index运算器对第3圈到第n圈左右两边的边界节点及杆件进行了删除操作,其算法实现过程见图10。最后通过Entwine运算器将2组不同方向的斜向杆件、环向杆件以及径向主脊线进行数据合并,形成了凯威特单层球面网壳一扇杆件的模型,如图11所示。
图10 生成一扇斜向杆件算法
图11 网壳一扇杆件建模
利用已建好的一扇网壳模型,通过Polar Array运算器进行环形阵列,运算器左端输入需要阵列的几何图形及阵列的数量n,右端即可输出完整的凯威特单层球面网壳模型,图12为算法的实现过程,网壳整体模型如图13所示。
图12 网壳整体建模算法
图13 网壳整体模型
在Grasshopper里完成建模后,需通过Bake命令将网壳烘焙到Rhinoceros中,由于参数化建模过程中没有发生曲线重叠的情况,可直接通过Rhinoceros导出几何文件,再将几何文件导入有限元软件中进行结构分析设计。
(1)参数化作为当前发展迅速的技术手段可对异形曲面、复杂形体等进行高效建模,有效地提高了工作效率。
(2)Grasshopper所提供的可视化编程方法为参数化建模提供了极大的便利,参数化建模思想也已广泛应用于建筑设计实践中。
(3)本文基于Grasshopper插件提出的凯威特单层球面网壳参数化建模方法,程序结构简单,并能实时预览参数调整效果,避免了大量重复工作的进行,为类似结构的建模提供了参考。