苗庭郡 张其林,2 满延磊,2 赵宇超
(1.同济大学 土木工程学院,上海 200092;2.上海同磊土木工程技术有限公司,上海 200092;3.上海建工四建集团有限公司,上海 201103)
金属结构空间弯扭构件指轴线为空间曲线且截面绕轴线有扭转的金属结构构件。与普通构件类似,金属结构空间弯扭构件的建模是相关实际工程中的重要一环。例如,在基于BIM 的结构深化设计中,对构件进行建模和深化是主要内容,三维模型正是深化设计的基础[1]。
金属结构空间弯扭构件的建模较常规构件更复杂。弯扭构件中的板件多为空间曲面板件,其建模可能涉及空间曲线和复杂曲面的处理,较为困难[2]。
针对这类构件,主流的商用建模软件和工程界现有的建模方式或无法完成建模,或在效率上仍有提升空间。
一些如Tekla 等主流BIM 建模软件对常规的构件有很好的支持,但无法直接通过输入空间曲线轴线、截面和截面方向的方式进行空间弯扭构件的三维实体模型建模[3]。一些如Rhino、CAD 等通用三维建模软件对于复杂曲面有完善的支持,但此类软件并非BIM类软件,不支持对于结构构件截面的参数化和工程所需的非几何信息的存储[4,5]。
工程界现有主要的金属结构空间弯扭构件建模方式有两类:一是针对项目开发定制软件进行建模,二是结合BIM 建模软件和通用三维建模软件实现建模。这两类方式的主要缺陷是效率较低。针对项目开发定制软件时间成本高、通用性差,综合效率较低。结合多款软件建模这一方法较为通用,如在阿尔及尔新机场、深圳当代艺术馆与城市规划展览馆项目中,中建钢构通过结合Rhino、CAD 的曲线功能和Tekla 三角划分节点实现了金属结构空间弯扭构件的建模[6,7]。但这类方法建模和修改过程复杂、参数化程度低,效率较低。
综合现有研究可知,当前金属结构空间弯扭构件建模技术尚不完善,主流的建模方式和软件存在以下缺陷:
(1)不能处理空间曲线轴线、截面和截面方向的输入并输出实体模型,难以满足工程实际需求[8];
(2)参数化程度低。较低的参数化程度意味着在建模和修改过程中存在大量的重复建模,效率较低[9];
(3)缺少必要的非几何信息。缺少材料、编号和加工工艺等非几何信息的模型无法直接用于实际工程项目。
本文通过设计金属结构空间弯扭构件建模算法和程序架构,提出了在上述方面有所改进的建模技术,通过软件编程和实际项目对技术的可用性和效率提升程度进行了验证。
金属结构空间弯扭构件建模技术的特点是:可以处理空间曲线轴线、截面和截面方向的输入并直接生成三维实体;支持参数化的建模与模型修改;所建模型包含工程非几何信息。技术的核心是板件、构件的建模算法和模型的几何描述。
板件、构件建模算法是参数化的。算法涵盖了从空间曲线轴线、截面和截面方向的输入到实体模型输出的所有步骤,用户无需处理建模细节,只要输入、调整参数即可实现对模型的建立、修改。同时,建模算法也包含了非几何信息的输入与保存。输入参数的设计思路如下:首先,参数包含建模所需的必要信息,包括定义构件几何形态必需的参数和工程所需的材料等非几何信息;其次,参数在形式上参考主流BIM 建模软件中常规构件的建模输入参数[5],这样能使得技术的使用更加契合用户习惯,提高易用性。
金属结构空间弯扭构件建模技术借助非均匀有理B 样条曲线曲面和实体的边界表示法实现了对复杂曲形构件实体的描述。非均匀有理B 样条是一种对于曲线曲面的描述方法,此方法应用范围广、灵活易用,已经有一套成熟的曲面生成方法[10]。边界表示法即用面的并集来表示实体的方法。
技术主要包含三个部分:板件建模、构件建模和附属零件建模。
金属结构空间弯扭板件建模算法的重点是处理板件边线输入并生成准确的实体模型。
该算法的输入参数为边线、导线、厚度和非几何信息。其中,边线和导线的作用是控制板件的几何形态。边线为板长度方向上的两条边线,决定了板件在各处的宽度和板件整体空间形态;导线为两端点分别在两条边线上的数条直线段,决定了边线之间板件的曲面形态。
板件生成算法首先将直线、圆弧、样条曲线等输入转换为非均匀有理B 样条曲线以实现输入参数的统一[11],然后借助双向曲线网格插值曲面技术[12]和实体的边界表示[13]实现实体模型的建立。
板件建模算法的流程如图1 所示,其中主要步骤的描述如图2 所示,解释如下:
图1 金属结构空间弯扭板件建模算法流程图
图2 金属结构空间弯扭板件建模算法示意图
(1)是以非均匀有理B 样条曲线的格式输入边线和导线。C 代表非均匀有理B 样条曲线。如图2(a)所示,Ck为两条次数p的边线,控制点为Pk;Cl为s条次数为q的导线,控制点为 Pl。 {Ni,p(u)}与{Nj,q(v)}是以u和v为参数的用来定义曲线的有理基函数,其中有理函数是由两个多项式的商表示的函数。边线和导线的具体定义如下。
(2)利用双向曲线网格插值曲面技术得到板件上表面S:
S 由三个相对简单的曲面叠加而成,它们分别为L1、L2和Ql,k。其中由输入曲线分别在u和v方向蒙皮可以得到曲面 L1和L2,通过对两组曲线的交点Ql,k插值可以得到曲面T。另外,S 计算式中的{φl(u)}和{φk(v)}满足:
(3)确定板件上表面曲面法向量n,如图2(b)~图2(c)所示,沿法向量将曲面按照厚度参数挤出得到板件实体模型;
(4)板件实体模型与非几何信息绑定,如图2(d)所示。
金属结构空间弯扭构件建模算法的重点是自动调用板件建模算法以实现构件建模的参数化。其输入参数为轴线、截面、轴线起点终点处截面方向和非几何信息。
构件由数个板件组成,因此,弯扭构件建模算法将输入参数转换为数组板件建模算法的参数,分别输入板件建模算法并将得到的数个板件实体模型组合以得到最终的构件实体模型,在整体上实现了参数化。
本算法处理不同截面类型的输入的思路为:在技术中内置主要的几类基础截面与对应的参数,并支持自定义截面。基础截面和参数如箱型截面和与其对应的长、宽、翼缘厚度和腹板厚度参数。对于基础截面,算法通过简单计算即可得到表示截面中各个板件的参数。同时,算法允许用户输入多组板件参数并储存为一个自定义截面。
构件建模算法的流程如图3 所示,其中主要步骤的描述如图4 所示,解释如下:
图3 金属结构空间弯扭构件建模算法流程图
图4 金属结构空间弯扭构件建模算法示意图
(1)将输入截面解析为数组参数,每组表示一块板,以箱型截面为例,等分构件轴线,如图4(a)~(b)所示;
(2)计算点组在轴线等分点局部坐标系处的位置,保证截面在等分点处于轴线垂直,如图4(c)所示;
(3)将同组点相连为直线段作为板件导线Cl,由不同组同下标的点生边线Ck,如图4(d)所示;
(4)将各组Ck、Cl、度和板件非几何信息输入到板件建模算法并输出数个板件模型,将得到的板件模型组合并与构件非几何信息绑定得到构件模型,如图4(e)所示。
根据工程实际需求,建模技术中包含了吊装耳板和加劲板的建模。由于这两类板件均为平面板件,可以简单地由平面区域沿法向拉伸描述。附属零件建模的主要步骤为:由用户输入的参数生成带有非几何信息的零件实体,由用户输入的主体构件和在构件轴线上点选的位置生成零件的定位坐标。其中,吊装耳板的参数包括材料、板厚、宽度和孔径;加劲板的参数包括材料、板厚、透气孔直径和中孔直径。
本文基于ObjectArx 对AutoCAD 进行二次开发,它们对于非均匀有理B 样条曲线曲面和边界表示实体有很好的支持。
程序采用面向对象的方法进行设计。主要分为曲线类、板件类和构件类。曲线类为ObjectArx 中的AcDbCurve,由用户输入的曲线得到;板件类从ObjectArx 中的AcDb3dSolid 派生,利用AutoCad 的内核实现实体信息的储存,由板件类自身实现参数化方法和非几何信息的储存;构件类为自定义类,可以储存所含板件的对象实例和构件自身的非几何信息,并包含可以处理轴线、截面等参数的参数化方法。程序结构如图5 所示。
图5 程序结构
本节首先介绍技术的建模功能和在实际项目中的应用,然后将技术与主流BIM 建模软件、通用三维建模软件进行对比。
在建模功能方面,技术具有前文所述的三个特点。如图6(a)~(d)所示,用户可以通过输入曲线轴线、端部截面方向和具体截面直接得到构件模型。此时得到的模型是实体的,用户可进一步对其做切割、合并等布尔操作。同时,如图7(a)~(c)所示,用户可以通过点击已有构件并输入新的截面参数快速更新构件模型、设定材料等非几何信息。此外,如图8 所示,技术支持附属构件建模。
图6 金属结构空间弯扭构件节点建模
图7 金属结构空间弯扭构建建模
图8 附属零件建模
实际应用方面,本技术已经在福州万宝商圈标志结构项目中成功应用。如图9~图10 所示,该项目中结构中构件的轴线均被设计为贴合建筑曲面的自由曲线,截面均为T 型截面且截面规格多,几乎每根构件的轴线、截面方向都各不相同,需要逐个建模。结构的焊接节点处也需要建模。采用常规方式则建模过程复杂、修改工作量巨大。对于本文提出的建模技术,结构的构件轴线、朝向和截面均可作为参数直接输入并得到模型,参数变化引起的修改也可以通过替换轴线和填入尺寸快速完成。如图11 所示,构件模型是三维实体的,因此可以直接在其上进行切割等操作以实现节点建模。
图9 福州万宝商圈标志结构整体模型
图10 典型T 型截面弯扭构件模型
图11 典型节点模型
设计人员利用本技术高效地完成了结构的建模,为结构构件的加工制造和最终施工提供了依据。该项目已顺利建成,项目夜景如图12 所示。
图12 项目夜景
对比主流商用软件,本文提出的技术在金属结构空间弯扭构件建模方面功能更全面。表1 是以技术的应用情况、所引文献和官方软件功能说明为依据得出的建模功能对比结果。对比对象为本技术、以Tekla 为例的主流BIM 建模软件和以Rhino 为例的通用三维建模软件。由表1 可见,主流BIM 软件能对常规构件实现参数化实体建模并储存非几何信息,但无法处理空间曲线轴线、截面和截面方向的输入;通用三维建模软件能对金属结构空间弯扭构件进行实体建模,但必须由人工绘制截面,且不支持参数化编辑和非几何信息的储存;而本文提出的建模技术较好的地实现了上述功能。
表1 各软件金属结构空间弯扭构件建模功能对比[3,5,6,7]
对比现有的金属结构空间弯扭构件建模方式,本文提出的技术在效率上有较大提高。对比开发定制软件,本技术支持主流的金属结构空间弯扭构件类型和建模功能需求,对于含常规金属结构空间弯扭构件结构的建模无需再做开发;对比结合BIM 建模软件和通用三维建模软件,本技术支持参数化建模与模型修改,建模过程更加快捷。在试验中,一个构件的建模从填选参数、点选轴线和方向线到生成实体仅需数秒,截面变动时仅需修改参数,实体模型随之自动更新,无需多步骤操作。
针对现有金属结构空间弯扭构件建模方式效率较低的问题,本文提出了一种基于非均匀有理B 样条的参数化金属结构空间弯扭构件建模技术。该技术重点设计了弯扭板件、构件建模算法,实现了支持空间曲线轴线、截面和截面方向输入的参数化实体建模。对比现有建模方式,本文提出的技术参数化程度较高,显著减少了模型建立和修改过程中的手动操作,提升了建模效率。此外,技术在复杂曲线参数支持、建立实体模型和非几何信息保存方面更为完善。技术通过C++语言及ObjectArx 开发工具编程进行实现并已在福州万宝商圈标志结构项目中使用,取得了良好的效果。