基于IFC的BIM三维几何建模及模型转换资料下载.pdf
- 文档编号:5974727
- 上传时间:2023-05-05
- 格式:PDF
- 页数:8
- 大小:667.52KB
基于IFC的BIM三维几何建模及模型转换资料下载.pdf
《基于IFC的BIM三维几何建模及模型转换资料下载.pdf》由会员分享,可在线阅读,更多相关《基于IFC的BIM三维几何建模及模型转换资料下载.pdf(8页珍藏版)》请在冰点文库上搜索。
建模时先将复杂的外表面分解成若干个组成面,然后定义其基本面素。
基本面素可以是平面或二次曲面,通过面素连接成组成面,各组成面拼接成模型。
表面模型能够比较完整地定义三维立体的表面,生成逼真的彩色图像,可以直观地进行产品的外型设计,也可用作有限元法分析中的网格的划分。
实体建模是在计算机内部以实体描述客观事物。
通常通过长方体、圆柱体、球体、圆锥体、楔体和圆环体等基本体素来创建三维对象,然后对这些基本体素进行布尔运算形成更为复杂的几何实体。
另外,实体模型也可以通过将平面对象沿路径拉伸或绕轴线旋转而得到。
实体模型包含完整的几何拓扑信息,可以从其中提取实体的物理特性,如体积、表面积、惯性矩、重心等,导出实体数据进行有限元法分析,或者将实体模型退化为表面和线框对象旧J。
在计算机中创建和显示三维模型,必须有三维图形系统支持,常用的图形系统有OpenGL、Direct3D、Java3D等。
OpenGL由美国高级图形和高性能计算机系统公司(SGI)开发,适用于三维图形应用程序设计接口,目前已成为开放式的国际三维图形程序标准旧J。
Direct3D由微软推出,广泛应用于Windows平台及游戏开发。
OpenGL和Direct3D均属于底层图形支撑系统,仅支持对点、线、面基本图元的渲染,对于复杂图形的渲染需要通过各种算法转化为对点、线、面的渲染。
另外,由Sun公司开发的Java3D,具有平台无关性,适合于网络和单机图形应用程序的开发。
Java3D采用面向对象的方式对基本的图形操作进行了封装,底层仍通过调用OpenGL或Direct3D进行图形渲染。
2三维几何建模及相关研究三维几何模型是BIM建模的基础,是贯穿于建筑生命期的核心数据,这些数据在建筑生命期的不同阶段被创建和利用,包含了丰富的工程信息,例【基金项目】国家自然科学基金项目(50478015);
国家“十一五”科技支撑计划项目(2006BAJ01807一03)
【作者简介】张建平(1953一),博士,清华大学土木工程系教授、博士生导师。
主要从事土木工程CADCAE、4DCAD、建设领域信息化、智能信息处理技术、数字减灾及智能决策技术、BIM及建筑生命期管理等方面的研究。
01062782706,Email:
zhangjptsinghuaeducn万方数据基奇IFC的BIM三维几何建模及模型转换41如通过建筑三维几何数据可以得出建筑构件的体积、空间位置、拓扑关系等工程信息。
然而,建筑工程不同阶段的不同应用对三维几何数据的处理需求是不一样的。
表1对不同类型的三维模型的特点及适用范围进行了总结。
在建筑设计阶段,基于BIM的设计软件创建的是三维实体模型。
实体模型记录了完整的几何拓扑信息,便于修改和编辑。
然而,实体模型的处理是一个相当复杂的过程,涉及到许多计算机图形学算法,通常需要借助专业的图形引擎实现。
在结构分析阶段,通常采用线框模型便于各种结构计算分析。
在施工阶段和运营阶段,其主要应用是通过对三维模型的展现,实现施工和运营过程的虚拟仿真,对模型的运行效率和刷新时间要求很高,因此表面模型更加适合。
另外,对于特定的应用,表面模型具有更加便于处理的特点,例如火灾模拟分析(FDS)、能耗分析、光照分析等。
表1三维几何模型的特点和适用范围由上述分析可以看出,设计阶段产生的三维实体模型处于BIM生命期的上游,作为核心的产品模型数据将随着工程进展被下游应用所使用。
由于对模型数据处理要求的不同,需要将实体模型演变为其他形式的三维几何模型,例如支持虚拟施工的仿真软件一般只能处理表面模型。
一些学者对实体模型生成用于结构计算的线框模型算法进行了研究。
本文则研究如何将实体模型转变为表面模型的方法。
目前三维模型的转换和显示有多种方法,每种方法各具特点,这些方法主要包括如下。
(1)将实体模型转换为VRML格式,通过VRML控件进行模型显示。
VRML是一种通用的图形交换标准,主要用于基于互联网的几何图形显示。
对VRML模型的显示通过互联网浏览器的插件实现。
VineetRKamatMJ、XiangyuWangL51等在其研究中便采用了这种方法。
这种方法有两个缺点。
首先,VRML的模型显示通过浏览器插件实现,应用程序能够提供的对几何模型的人机交互界面取决于浏览器插件的功能。
通常VRML插件功能有限且不支持再开发,致使功能无法定制。
其次,由于VRML不支持布尔运算,而无法进行相应的模型处理,如在构件中开洞(墙中有窗的情况)等。
(2)开发实体模型转化器。
通过开发实体模型转换器,将实体模型转换为表面模型,然后通过OpenGL、Direct3D等图形引擎显示模型。
这种方法开发工作量大,而且转换后的数据没有统一存储格式,难以被其它应用程序使用,数据的可重用性差。
(3)开发轻量级三维图形引擎。
一些研究者通过开发轻量级图形引擎,面向专业应用进行三维实体模型处理。
通常由于功能十分有限,仅能处理数量有限的简单实体模型,对于包含需要布尔运算的复杂模型处理则无能为力,而且不具有通用性。
综上所述,本文提出了一种基于AutoCAD图形引擎的BIM三维实体建模以及转换为三维表面模型的方法,克服了上述方法中用户界面交互性不佳、模型转换后数据可重用性差、不具通用性等缺点。
3BIM的几何数据描述31几何模型的类型基于IFC的BIM可以存储多种类型的几何模型数据,表2列出了支持的几何模型类型。
其中,Cuwe2D、GeometricSet、GeometricCurveSet用于描述由点、线、面基本图元组成的模型。
SurfaceModel用于描述表面模型。
SolidModel用于描述实体模型,又可细分为SweptSolid、Brep、CSG、Clipping、Ad-vancedSweptSolid等多种类型。
万方数据42表2IFC预定义的几何表达类型类型说明Curve2DC,eometricSetGeometrlcCurveSetSurfaceModelSolMModdSweptSolidBrepCSGClippingAdvancedSweptSolid2维曲线点、曲线、表面(2维或3维)集合点、曲线(2维或3维)集合表面模型实体模型通过拉伸或旋转形成的扫略实体边界描述实体通过布尔运算生成的几何构造实体通过布尔运算生成的几何构造实体(特指通过差运算得到的实体)沿基线扫略生成的扫略实体32几何模型与建筑构件的集成建筑产品包括建筑构件、配电构件、家具等,均由IfcProduct实体派生。
IfcProduct是一个抽象基类型,定义了与几何表达相关的属性,如图1所示。
IfcProduet实体的ObjectPlacement属性定义坐标信息,坐标信息既可以采用世界坐标、相对坐标,也可采用相对于轴线网格的方式描述。
通过坐标变换矩阵进行坐标变换可以得到建筑产品在世界坐标系的最终位置。
IfcProduct实体的Representation属性用于定义建筑产品的几何模型,包括建筑产品的几何描述和材料定义的几何描述。
IfcProductRepresentation实体的Representations属性为列表类型,可以为同一个建筑产品存储多个几何模型数据,例如描述同一个建筑产品的实体模型、线框模型和表面模型。
每一个几何模型对应一个IfcRepresentation实体的实例,模型的类型为表2中所列类型,存储在RepresentationType属性中o4BIM几何实体模型的重建AutoCAD是广泛使用的CAD软件,具有强大的二次开发接口,可以将AutoCAD作为三维几何图形引擎使用。
随着Net技术的不断成熟,AutoCAD的二次开发不仅可以使用传统的ObjectARX函数库,也可以使用基于Net的AutoCAD托管函数库。
本文基于AutoCAD2007平台,采用C#语言和Net托管函数库,实现重建实体模型和将其转换为表面模型,使用ObjectARX中的Acbr函数库处理实体模型的三角形网格划分。
为了清楚阐述其实现过程,本节以一个IfcProd-uct派生类实例的几何实体模型重建作为研究对象,由于方法对于任何IfcProduct派生类实例是通用的,因此通过遍历全部实例便可以实现对整个BIM模型的几何数据处理。
重建几何实体模型的流程如图2所示。
图1建筑构件与几何模型的集成万方数据基于IFC曲BIM三维几何建模及模型转换43是图2重建几何实体模型的流程首先,读取几何实体模型数据,数据可以来自IFC文件也可以来自BIM数据库。
BIM的实体几何数据以IFC几何资源实体表达,实体分为表示运算符的实体和表示几何图元的实体,构成由运算符和几何图元组成的二叉树结构,最终表示的实体模型便是通过遍历该二叉树并进行坐标变换得到的结果。
因此需要通过分析几何实体将其解析成几何操作和几何图元。
由于二叉树具有多层嵌套关系,对于一个上层的几何操作可能需要首先调用底层的几何操作,将其返回的结果作为输入参数进行运算。
因此,判断当前几何操作是否为可直接执行的操作,如果为“否”则继续执行分解几何操作和几何图元步骤,如果为“是”则重建几何图元并执行几何操作。
AutoCAD托管函数库提供了与BIM几何图元对应的几何类,如表3所示,通过实例化对应的AutoCAD几何类,实现几何图元的重建。
实体的几何操作通过调用相应的成员函数实现,表3列出了与IFC实体对应的AutoCAD成员函数。
以上两个步骤便生成了局部的几何模型。
表3BIM的几何图元与AutoCAD几何类IFC几何图元AutoCAD几何类IfcCartesianPointIfcLilieIreCircleIfcPlaneIfcPolylinelfeArbitrm3,ClosedPrdileDefIfeExtmdedAreaSolidPoint3dineCirclePlaneDBObjectCollectionRegionS0lid3d表4BIM几何操作与AutoCAD类的成员函数BIM几何操作AutoCAD类的成员函数IfeExtmdedAreaSolidSolid3d:
ExtrudeAlongPath();
IfeBooleanClippingResuhSolid3d:
BooleanOperation();
然后需要根据BIM实体的坐标信息描述,对生成的局部实体模型进行坐标变换。
首先需要生成坐标变换矩阵,通常坐标变换由多次变换组成,可以通过矩阵相乘获得最终的变换矩阵,便可以对实体进行坐标变换。
最后判断是否得到了最终的几何模型,如果“是”则按照上述方法执行整体坐标变换,如果“否”则将局部的几何模型返回,激活挂起的操作,继续流程图中的步骤。
上述几何流程可以对任意的IFC几何实体模型进行重建,在图形引擎中生成相应的对象。
然而,若要基于创建的实体模型生成BIM表面模型,则在建立最终的几何模型后需要记录当前生成的几何模型所属IfeProduct实例的GlobalId值,以便将生成的表面模型集成到BIM模型中。
在AutoCAD中可通过AutoCAD组(Group)记录Globalld值,即建立与Globalld值对应的AutoCAD组,并将已建立的实体模型添加到该AutoCAD组中,从而实现对(;
lob-Mid的追踪。
5BIM表面模型的生成51BIM表面模型生成流程BIM表面模型建模是通过读取BIM模型中已有的实体模型数据,在三维图形引擎中进行处理,最终将生成的表面模型数据集成到BIM模型中的过程,如图3所示。
万方数据图3BIM表面模型建模流建筑产品的几何模型通常在设计阶段创建,与实体属性、工程信息等集成为BIM模型。
几何模型的描述应用了IFC模型的资源实体,这些实体不能独立用于信息交换。
将实体模型通过三维图形引擎进行处理的过程,需要追踪GlobalId值。
当返回处理结果时,可以通过Globalld值定位到对应的建筑产品实体实例,然后将新创建的表面模型集成到BIM模型中。
表面模型的创建分为三个主要步骤:
首先,进行上一节介绍的几何实体重建;
然后,对建立的实体模型进行三角形网格划分;
最后,将三角形网格数据转换为表面模型数据并重新集成到BIM模型中。
52实体模型的三角形网格划分对实体模型的三角形网格划分通过调用AutoCADAcbr函数库实现,流程如图4所示。
对上节中建立的AutoCAD组进行遍历,逐一处理组中的几何实体模型。
首先,打开组中的几何实体,使其处于可读取状态。
然后,调用Acbr函数对实体进行三角形网格划分,形成由三角形顶点数据组成的顶点集合Pts。
这一过程通过调用Get3dSolidMeshVertices函数实现,该函数以表示实体模型的objld为输入参数,将计算生成的三角形网格数据以点数组的形式返回给参数幽。
然后,根据Pts数据在AutoCAD中创建3DFace三角形面对象。
最后,为了记录Globalld,将这些三角形面对象添加到与Globalld对应的AutoCAD组中。
图4实体模型三角形网格划分流程53表面模型数据的集成将三角形网格数据转化为表面模型的流程如图5所示。
对AutoCAD组进行遍历,逐一处理组中的3DFace面数据。
首先打开当前组中的3DFace表面对象,对顶点数据进行访问。
然后,生成基于BIM的表面模型描述。
最后,获取当前组的GlobalId,通过Globalld在BIM模型中定位对应的IfcProduct实例,从而将表面模型集成到BIM模型中。
图5BIM表面模型的集成流程万方数据基于IFC的BIM三维几何建模及模型转换45图6表面模型描述涉及的主要实体为实现基于BIM的表面模型描述,首先需要对BIM的表面模型结构进行研究。
BIM表面模型的描述通过多个实体实现,如图6所示。
If:
cFaceBasedSurfaceModel用于描述表面模型。
表面模型的数据按照层次关系组成,分别是面集合(IfcConnectedFaceSet)一面(IfcFace)一面的边(IfcFaceBound)多边形(IfcPolyLoop)一点(IfcCartesianPoint)。
这些所需的数据已经在上个步骤中准备好,需要按照上述层子结构转化为BIM表面模型的格式。
最后将IfcFace-BasedSurfaceModel实例赋值给IfcShapeRepresenta-tion实例并集成到BIM模型中,为了标识所创建的几何模型类型为表面模型,将其Representationlden-tifier属性设置为“FaceBody”,RepresentationType属性设置为“SurfaceModel”。
6方法验证为了验证提出的BIM表面模型创建方法的可行性,本文选取基于BIM的建筑设计软件Revit进行建筑实体模型的建模。
在Revit中建立了包含多种建筑构件的实体模型,使用本文提出的方法,成功将Revit模型进行BIM三维实体模型重建,转换为BIM三维表面模型,并将新创建的表面模型集成到原BIM模型中。
图7为Revit中建立的几何实体模型,图8为创建的表面模型。
测试表明本文提出的BIM表面模型创建方法是有效可行的。
7结论本文提出了基于BIM的三维实体模型重建和由实体模型转换生成BIM表面模型的方法,可以满足BIM几何数据针对建筑工程不同阶段的应用要求,提高了BIM模型数据的可重用性和适应性。
参考文献1FarajI,AlshawiM,AouadG,eta1Anindustryfounda-tioncllHse8Webbasedcollaborativeconstructioncomputerenvironment:
WISPERJAutomationinConstruction,2000,10
(1):
79-99图7Revlt建筑实体模型图8BIM表面模型万方数据2徐光明,麦范金CAD曲面网格建模方法J机械设计与制造,2007(10):
81-823强大再,陆长德,余隋怀,等基于OpenGL的三维仿真实现机械科学与技术J机械科学与技术,1999,18(5):
846-8484KamatVR,LipmanRREvaluationofstandardproductmodelsforsupportingautomatederectionofstructuralsteelworkJAutomationinConstruction,2007,16(6):
232-2415WangXiangyu,DunstonPSRealTimePolygonalDataIntegrationofCADAugmentedRealityinArchitecturalDesignVisualizationCProceedingsofthe2005InternationalConferenceCancun。
MexiCO。
2005Methodologyof3DGeometricModelingandModelConversionofrCbasedBIMZhangJianping,ZhangYang,ZhangXin(DepartmentofCivilEngineering,TsinghuaUn协ersity,Beijing100084,China)Abstract:
ContrasttothetraditionalpaperbasedinformationrepresentationmethodologywhichUSeS2Dgraph-icprimitiveelementssuchaspo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 IFC BIM 三维 几何 建模 模型 转换