工业基础类—利用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—提取模型结构树
|
机器学习/深度学习 PyTorch 算法框架/工具
torch.nn.Linear的使用方法
torch.nn.Linear的使用方法
917 0
|
安全 数据库 C++
Python Web框架比较:Django vs Flask vs Pyramid
【4月更文挑战第9天】本文对比了Python三大Web框架Django、Flask和Pyramid。Django功能全面,适合快速开发,但学习曲线较陡;Flask轻量灵活,易于入门,但默认配置简单,需自行添加功能;Pyramid兼顾灵活性和可扩展性,适合不同规模项目,但社区及资源相对较少。选择框架应考虑项目需求和开发者偏好。
917 0
|
9月前
|
XML 前端开发 调度
上下文爆炸?揭秘智能压缩术:引用机制让多智能体飞起来​
本文探讨多智能体协作调度中的层级指挥模式及其在实际应用中的性能与体验优化。针对 React 模式在工具调用、上下文管理、任务总结与过程监督等方面的痛点,提出流式 XML 工具调用、上下文压缩、通用推理兜底、任务总结增强与 MCP 监督机制等改进方案,有效提升任务执行效率与系统稳定性,为多智能体系统优化提供实践参考。
719 0
|
9月前
|
SQL 关系型数据库 MySQL
排除通过IP访问MySQL时出现的连接错误问题
以上步骤涵盖了大多数遇到远程连接 MySQL 数据库时出现故障情形下所需采取措施,在执行每个步骤后都应该重新尝试建立链接以验证是否已经解决问题,在多数情形下按照以上顺序执行将能够有效地排除并修复大多数基本链接相关故障。
557 3
|
8月前
|
机器学习/深度学习 数据采集 人工智能
112_跨模态微调:文本与图像联合优化
跨模态微调是指在预训练的多模态模型(如CLIP)基础上,针对特定任务进行的参数调整过程。与单一模态微调不同,跨模态微调需要同时考虑文本和图像两种模态之间的交互与对齐,这使得整个优化过程更加复杂但也更具潜力。
662 0
|
机器学习/深度学习 人工智能 算法
大型多模态推理模型技术演进综述:从模块化架构到原生推理能力的综合分析
该研究系统梳理了大型多模态推理模型(LMRMs)的技术发展,从早期模块化架构到统一的语言中心框架,提出原生LMRMs(N-LMRMs)的前沿概念。论文划分三个技术演进阶段及一个前瞻性范式,深入探讨关键挑战与评估基准,为构建复杂动态环境中的稳健AI系统提供理论框架。未来方向聚焦全模态泛化、深度推理与智能体行为,推动跨模态融合与自主交互能力的发展。
1005 13
大型多模态推理模型技术演进综述:从模块化架构到原生推理能力的综合分析
Threejs中导入GLTF模型克隆后合并
这篇文章详细说明了在Three.js中如何导入GLTF模型,对其进行克隆,并将多个克隆模型合并成一个整体模型的过程。
809 2
Threejs中导入GLTF模型克隆后合并
|
机器学习/深度学习 人工智能 测试技术
Qwen2.5-Max 发布,探索大规模 MoE 模型的智能
Qwen2.5-Max 发布,探索大规模 MoE 模型的智能
|
机器学习/深度学习 自然语言处理 Python
Softmax函数解析:从入门到高级
Softmax函数解析:从入门到高级
1504 0