工业基础类—利用xBIM提取IFC几何数据

简介: 工业基础类—利用xBIM提取IFC几何数据

在正式说提取IFC几何信息之前,我想我们应该花点时间了解一下什么是几何,以及IFC标准中是如何描述几何的。生活中的几何无处不在,它是由点、线、面等基本几何图形组合而成,它可以构成一个方方正正的桌子,也可以构成一个错综复杂的沙发。


b4f06eb071e39b302fa7c94ea3ddf8f9.png


描述几何体的方法有很多,但大致可以分为两个阵营,一是隐式描述;二是显式描述。凭字面意思,大家也不难猜到隐式描述其实就是不直接说出这个几何体的具体信息,而是拐弯抹角地记录一些特征信息,例如我想描述下面这个几何体,我完全不需要给出所有的顶点坐标和他们的连接关系(拓扑),而是告诉你一个轮廓(轮廓的顶点和顺序),然后再给一个拉伸向量就OK了,但不管是隐式还是显式最后呈现出来的几何体都是唯一的。


0c37879db91e806ba35622c95e7e7cd3.png


IFC几何描述方法


那么IFC到底支持哪几种几何描述方式呢。总结起来有三种:边界表示法(Brep)、实体构造法(CSG)和扫掠法(Sweep)。我们分别解释一下这三种几何描述方法,Brep描述的是几何体的外表面,包括顶点坐标和拓扑关系,这种描述方法适用性很广;CSG法可以用来描述一些规则的形体,例如立方体、球体等,以及通过它们之间的并差交集来表达复杂的几何;Sweep法主要用于线性几何体的表达,例如管道、钢筋等等。需要说明的是,对于Brep描述法,IFC2x3和4存在一些差异,即IFC2x3仅支持封闭面为平面的情况,而IFC4已经支持B样条曲面等复杂的曲面了。这种改进也使得IFC4的几何更加保真,并且在文件体量上也有所改善。因此,通常更加推荐大家使用IFC4标准。


1c76652b0da84a5027d15e39cac8fed5.png


IFC几何描述框架


对于任何一个IfcProduct对象都具有Representation属性,即IfcProductDefinitionShape实体,用于关联整个几何形体的表达,这其中又包含了多个IfcShapeRepresentation,每个IfcShapeRepresentation中记录了其对应的几何环境和几何的具体表达。这里的几何环境主要包括当前绘制环境(2D or 3D)和几何精度。

3e86d743039a89ffbba384b1803c3cd6.png


8c810d5b13795a182fc14389597e5e84.png


几何信息提取


这里话不多说,直接上代码。


相关文章
|
数据可视化 C# C++
工业基础类IFC—提取模型结构树
工业基础类IFC—提取模型结构树
工业基础类IFC—提取模型结构树
|
6月前
|
存储 并行计算 算法
基础的点云转换
对于点云处理而言,最简单也逃不过的就是点云转换了,我们就从点云转换开始,来一步步完成点云加速的学习。点云基础转换是3D点云处理中的一个重要步骤。它的主要目的是将点云从一个坐标系转换到另一个坐标系中,通常是为了方便后续处理或者显示。在实际应用中,点云基础转换通常包括平移、旋转、缩放等操作。这里对应了pcl::transformPointCloud这种方法 1. CUDA与Thrust 使用CUDA和Thrust进行点云基础转换可以大大提高处理效率,特别是当点云数据量较大时。CUDA是一种并行计算架构,可以利用GPU的计算能力来加速计算,而Thrust是CUDA的C++模板库,提供了许多与ST
129 0
|
7月前
|
编解码
ENVI无缝镶嵌、拼接栅格数据的方法
【8月更文挑战第10天】使用ENVI进行无缝镶嵌的方法包括:准备具有一致空间参考的栅格数据;通过“File”菜单逐个加载数据;启动“Seamless Mosaic”工具;添加待镶嵌图像;调整几何校正、颜色平衡及羽化参数以平滑过渡;设定输出路径与格式;最后执行镶嵌并检查结果质量,必要时微调参数直至满意。
541 1
|
存储
ArcGIS:模型构建器内变量的数据类型中栅格图层和栅格数据集的区别
ArcGIS:模型构建器内变量的数据类型中栅格图层和栅格数据集的区别
133 0
|
10月前
|
传感器 XML 数据处理
Landsat Collection 2 T1一级数据详细介绍(数据处理过程和几何精度)
Landsat Collection 2 T1一级数据详细介绍(数据处理过程和几何精度)
108 0
基于DEM提取坡度、坡向方法汇总
基于DEM提取坡度、坡向方法汇总
665 0
基于DEM提取坡度、坡向方法汇总
|
Python C# C++
工业基础类IFC—开源库汇总
工业基础类IFC—开源库汇总
工业基础类IFC—开源库汇总
|
数据挖掘
ArcGIS:如何进行栅格数据的拼接和裁剪、坡度坡向的提取、地形透视图的建立、等高线的提取、剖面图的创建?
ArcGIS:如何进行栅格数据的拼接和裁剪、坡度坡向的提取、地形透视图的建立、等高线的提取、剖面图的创建?
497 0
|
监控 数据可视化
工业基础类IFC—概述
工业基础类IFC—概述
工业基础类IFC—概述