大型钢结构的快速建模方法
2019-01-23申跃杰赵正旭郭阳温晋杰左宗成徐博贤
申跃杰,赵正旭,郭阳,温晋杰,左宗成,徐博贤
(石家庄铁道大学复杂网络与可视化研究所,石家庄050043)
0 引言
一是随着国民经济的发展,大型基础设施的建设越来越多,规模也越来越大;二是由于钢结构强度高、自重轻、塑性和韧性好;三是钢结构部件之间一般采用焊缝、螺栓或铆钉连接,施工方便,装配化程度高,施工周期短;四是由于钢材的可重复利用,大大减少了建筑垃圾,大力发展钢结构建筑是贯彻落实绿色低碳环保要求,提高建筑工业化水平的重要途径,同时又可以缓解国内钢铁行业产能过剩的现状。包括但不限于以上原因,国内大型钢结构产业蓬勃发展。深圳信兴广场、沈阳博览中心、广州白云机场、上海新博览中心、上海南站、南京奥体中心、国家体育场(鸟巢)和五百米口径球面射电望远镜FAST(中国天眼)等都是国内具有代表性的钢结构建筑。目前钢结构建筑在层级高、规模大的建筑上的运用日益成熟,尤其是在大型厂房和场馆等领域逐渐成为主流的建筑工艺,是未来建筑的发展方向。大型钢结构产业在迅速发展的同时,也带来一些新问题。一是在施工过程中,大型钢结构施工过程一般都是高空作业,危险系数要高于普通的混凝土建筑,事故时有发生,其中吊装过程事故率尤为突出[1]。如某超长悬挑结构整体变形不满足规范要求而导致的施工事故[2]、某红木制品公司的厂房因柱脚锚栓失稳而导致的结构倒塌事故[3]、某重型工业厂房因格构柱未全部拉结加固到位导致主厂房结构倒塌事故[4]。二是在大型钢结构建成之后,如何向外界推广宣传以及科普教育的问题。以中国天眼为例,天眼是于2016年建成的属大型钢结构的国家重大科技基础设施,位于贵州省黔南布依族苗族自治州平塘县克度镇大窝函的喀斯特洼坑中,交通不便导致大众只能通过新闻报道来了解天眼。即使大众可以到天眼所在地现场观摩,身置一个500米口径的庞大物体之中,也只能窥其一角,并不能了解天眼的全部构造。如何将天眼通过索网调整反射面单元,形成300米口径抛物面的这一过程真实客观地展示给大众也是问题之一。传统的图片以及视频并不能详细介绍天眼的构造以及工作原理。而三维虚拟仿真技术可以做到,可以通过该技术将整个天眼的构造以及工作时的状态仿真,以此将深山之中的天眼向大众科普[5]。
随着虚拟仿真技术的发展,该技术已成功应用于建筑工程领域。而在虚拟仿真的过程中,建模是重要环节。现有建模方法主要包括程序生成和借助建模工具建模两种。其中程序生成建模需要建模人员掌握OpenGL等图形语言的编写,对建模人员的编程能力要求高。而从事钢结构建筑的设计人员一般更注重AutoCAD、3ds Max等软件的使用,而非程序编写。因此在大型钢结构的建模过程中,此方法的局限性更加明显[6]。从而选用建模工具来对钢结构进行建模。但并非单独选择一种工具,而是选择多种建模工具,利用建模工具各自的优势,来提高建模效率。
针对大型钢结构,建立一套快速的建模方法,无论是在前期的施工过程还是后期的宣传推广过程,都可以缩短工期,降低成本。本文提出一种以钢结构节点为基础数据,然后以点成线,以线成面,最终生成模型的快速方法。并以天眼为研究对象,利用AutoCAD和3ds Max,运用该方法对天眼进行建模,验证了其有效性。
1 数据预处理
1.1 数据收集
钢结构主要是由钢柱、梁钢和钢桁架等钢构件连接而成。构件之间主要通过节点焊接,梁钢与梁钢之间又可搭置钢板。所以节点可以看作是建造钢结构模型的基础。选取空间一点作为坐标原点,选坐标原点应以方便表示钢结构节点坐标为原则。以中国天眼为例,选取天眼底端的中心点为坐标原点,可以方便地利用柱面坐标系来表示天眼中的其他节点。又因天眼形似球冠,本身具有对称性,节点之间有规律可循,因此可以利用Excel等工具简化数据处理过程。在构建天眼模型的过程中,将天眼主要分为四部分[7]:馈源仓和支撑塔、反射面、圈梁和附近地形。馈源仓和支撑塔可以作为独立物体进行精细建模,本文将不再赘述。附近地形可以通过DEM数据和卫星影像数据来生成。下面将具体介绍圈梁和反射面节点数据的收集处理过程。
(1)确定节点编号规则
节点编号规则为:圈梁节点编号时是由上往下、由里向外、逆时针编号;反射面节点编号时是由上往下、由外向里、逆时针编号。首先确定编号规则,是为了以后数据的规范处理[8]。如果在验证数据阶段,数据出现错误,可以根据验证结果快速锁定数据出错的位置。
(2)圈梁节点数据的收集
圈梁结构分为上下两层,共有2400个节点。第一层共有三圈,1500个节点,由内而外分别为第一圈、第二圈和第三圈。第一圈包含600个节点,为其编号1-600;第二圈包含300个节点,为其编号601-900;第三圈包含600个节点,为其编号901-1500。圈梁第二层也分三圈,与第一层不同的是,第二层的每一圈均只有300个节点,为其编号1501-2400。
(3)反射面节点数据的收集
反射面结构共有1957个节点,27层。如图1所示。
图1 反射面节点
部分层的节点个数以及节点编号如表1所示。以此类推,将反射面1957个节点编号。
表1 节点编号规则
(4)边关系数据的收集
钢柱和梁钢是钢结构的主要组成部分,两者可以看作是连接节点的边。节点之间有无边关系即可表示节点之间有无钢柱这类构件。以1代表有连接,以0代表无连接。与收集节点坐标信息相似,边关系的信息也有规律可循。部分边关系整理如表2所示。
表2 边关系
由于圈梁和反射面结构本身具有重复性、对称性、有规律性,因此可以利用Excel的函数功能来简化数据的处理过程。以天眼圈梁为例,经实地考察,发现天眼圈梁是由一个基础单元组成,其他部分可以看成该单元的复制。只要收集一个单元的数据,其他部分均可以按照一定规律(如圈梁节点之间的弧度相等)进行处理。
1.2 数据验证
如果在建模过程中,发现数据错误,然后再重新整理数据,重新建模,将会是一个耗时耗力的过程。所以本方法提出在建模之前对数据的正确性进行验证。利用MATLAB软件在数值分析、矩阵计算和科学数据可视化方面的优势,对所有节点信息进行处理,生成模型的架构。根据生成图来判断数据是否有错误。如果数据错误,在这个阶段就可以对数据进行修改,避免工作后期人力物力的浪费。
(1)节点坐标转换
首先在Excel中利用其自带的函数功能将节点坐标的表示方式由柱面坐标系改为笛卡尔直角坐标系。将三维的节点坐标改为多个二维坐标,便于验证。下面以x、y方向为例来说明。转换公式如下:
公式(1)和(2)分别是x,y方向的坐标转换公式,其中H2为每一层节点所在圆的半径,D2为节点编号与前面所有层节点数的差,E2为该层的节点数。当所有参数确定之后,分别在两列进行上述函数的输入,然后双击单元格右下角小十字,根据节点个数完成公式的复制,从而达到节点转换的目的。
由于节点数较多,故不一一列出,反射面第二层节点的部分坐标转换结果如表3所示。
表3 坐标转换结果
(2)节点数据验证
节点的直角坐标系生成之后,将fastpoint文件(包含节点坐标信息)和fastedge文件(包含节点边关系信息)导入MATLAB,使用MATLAB对数据正确性进行验证。验证过程如下:
第一步:构建邻接矩阵:
rowMax=max(data(:,1));
columnMax=max(data(:,2));
maxValue=max(rowMax,columnMax);
result=zeros(maxValue,maxValue);
for row=1:length(data(:,1))
result(data(row,1),data(row,2))=data(row,3);
result(data(row,2),data(row,1))=data(row,3);
end
第二步:构建坐标矩阵:
point=[data1(:,2),data1(:,3)]
第三步:做图仿真:
gplot(result,point)
第四步:生成图无误之后,确保数据无误。
其中 max、zeros、gplot均是 MATLAB中的函数指令,max用来求最值,zeros用来生成矩阵,gplot用来对表示邻接矩阵的节点和链接绘图。
以天眼反射面和圈梁的节点数据为例,生成图如图2所示。其中周围一圈为天眼上下两层的圈梁,中间为反射面。此处截图是为了反映验证过程的整体效果,故牺牲了细节方面。由于天眼体型巨大,将整个模型截图下来,会导致细节不清楚。但在实际操作过程中,如果通过整体效果看出某部分存在问题,可以放大待操作部分进行细致观察。
图2 反射面和圈梁的验证结果
2 结合AutoCAD和3ds Max进行建模
利用AutoCAD可以批量处理节点坐标的优势,将天眼所有的节点进行初步加工,生成简单模型。然后将经过加工的初步模型导入到3ds Max中,进行精细建模和渲染等一系列操作。
2.1 CAD 处理节点坐标数据
首先需要将Excel中节点的三维坐标整合到一处,整合命令为:=B2&","&C2&","&D2,其中 B2、C2 和 D2分别为x、y和z所在单元格,可根据数据所在位置调整。在AutoCAD中利用3DPOLY命令操作节点坐标生成闭合曲线。为便于管理,每层节点单独生成闭合曲线。每两层节点作为一组,也就是每组两条闭合曲线,最终效果如图3所示。图中效果看似是两个圆,其实是由线段拼接而成,并非圆形,放大之后可以看出。线段的端点即是节点,该曲线中包含节点的坐标信息。最后保存为dwg格式以便导入3ds Max中进行下一步操作。
图3 闭合曲线图
2.2 3文件ds Max导入dwg
在3ds Max中导入前期生成的dwg文件,基于计算机性能考虑,每次导入一组闭合曲线。选中点层级,焊接,转换为可编辑多边形,然后全选连接,如果线连接无规律时,需手动连接,依次对多边形分离。分离完成之后,将其打组便于后期管理。该操作是将带有节点信息的线生成面片,主要依靠的是3ds Max的自动处理功能,无需过多人工操作。共27个这样的组,也就是共27层面片,全部完成之后,依次添加到3ds Max中,最终结果的三视图如图4所示。
图4 反射面的整体效果图
2.3 模型贴图及渲染
天眼的反射面是由4450个反射单元组成,每个反射单元都能通过索网进行调节。每一个反射单元在模型上可以看做一个面片,而每一个面片都可以单独拿出来进行操作。如果不为每个面片贴上能代表其形状的贴图,渲染之后,天眼的反射面就成为一个整体的球冠,不能真实反映天眼反射面的情况。而面片种类多,数量大,如果单独为每一个面片贴图,4450个面片就要4450次操作,工作量巨大。可以利用3ds Max自带功能,批量为其生成贴图,过程如下:
选中天眼反射面的所有面片(即每个多边形),进行塌陷,将4450个面片暂时整合成一个对象。熔合阈值为0.01的节点并进行焊接。在该过程中,如果计算机性能(尤其是显卡性能)较低,一次性处理所有面片会出现模型显示不全的问题。可以考虑将整个反射面分割成几大部分进行批量处理。相比于整体处理,会多几次重复操作,但却可以解决因计算机性能而带来的不便。
在修改器列表中选择uvw展开,进行快速平面贴图。进入uv编辑界面,根据需求对所有面进行松弛,保证每条边不会重合或者杂糅在一起。若有必要对面进行缩放,保证整个对象在绿色正方形的线框中。渲染uvw模板,保存成*.png格式的图片。
使用Photoshop软件,编辑上述保存的图片,在该图片上进行纹理绘制。将图片中的绿色网格线改为灰色,RGB 参数为 5,7,0。赋予材质背景,RGB 参数为189,189,189。以JPEG格式保存制作好的纹理贴图,部分批量贴图效果如图5所示。
图5 批量生成的部分贴图
选取材质球,通过材质设置面板选择位图,将纹理材质赋予到材质球上,并将材质贴到天眼模型上。
采用VRay渲染器对场景中的模型进行渲染。采用VRay的优势为有很多:一是可以与3ds Max无缝结合;二是它有广泛的材料库和资源;三是VRay的速度非常适合快速动画;四是现实世界的材质渲染更加真实,等等[9]。
拆分模型,使用3ds Max软件中自带的炸开命令,可将大部分多边形进行拆分。每个多边形相当于天眼中的单个反射面板,炸开后检查是否符合反射面板的数量,若不完整,手动对其分离。经过渲染之后的反射面的模型如图6所示。
图6 渲染之后的反射面
2.4 整合天眼与附近环境
天眼模型建成之后与附近环境整合。附近环境可以通过该区域的DEM数据和卫星影像数据生成三维模型。在该阶段用到的软件包括BIGEMAP、Global Mapper等软件。大型钢结构的建模方法是本文的研究重点,而生成地形的方法又有很多,所以地形的生成过程将不再赘述。图7是整合之后的具体效果。
3 结语
大型钢结构虽种类繁多,结构复杂。但钢结构的基本构架却大同小异,都是由钢柱、梁钢和钢桁架等钢构件连接而成。以刚构件之间的连接节点为突破点,以节点为建模的基础数据,再以点扩展到线和面,从而完成建模。整个建模过程多依赖于软件的批量处理功能,极大减少了人工操作,提高了建模效率。而该方法需要在建模前期对钢结构的节点数据进行收集处理,越是规则(例如有对称性、有重复单元)的钢结构,节点的处理工作就越有规律可循,处理数据的时间就可大幅度降低,因此该方法更适用于规则的钢结构。最终通过对天眼的建模,验证了该方法的可行性,为其他大型钢结构的建模提供了一种参考方法。
图7 天眼与附近环境