ifcconvert转换ifc为Obj

本来打算用ifcopenshell的c++sdk去转化,发现有问题,死活编译不过去。

后来用ifcconvert将.ifc转换成.obj,没有材质,再把obj用文本读取,再写在第二行上mtllibt 材质写到obj文件,可以发现有材质。

用deepseek进行,发现一直推荐ifcopenshell的python,我也不会Python啊,但是编译不过去,只好下载python,再更新pip,下载ifcopenshell。然后从python的hello,用c++ system()调用strcommond = "py "+ " print("hello"),再到 传递文件名给.py文件,可以看到一部分信息。

由于每部分的guid唯一,再把obj重新ifcconvert 的 --use-element-guids:会在输出文件中嵌入这些 GUID

,这样每部分的几何体就是g +guid。

后来,打算把obj的每部分拆分成1.obj,2.obj...这样点击每个obj时可以获取guid。其实没必要,因为用Nodevisitor发现每个geode的名字就是这个guid。

再把获取的ifc文件中的guid信息表中,获取相应信息,可以生成json文件,再用json.hpp(vs2019版本是正常的)

也考虑ifcplusplus库,

相关推荐
麻瓜老宋25 分钟前
AI开发C语言应用按步走,表达式计算器calc的第一步,中缀表达式词法分析
c语言·开发语言·atomcode
灯澜忆梦1 小时前
GO_文件处理---字符串操作
开发语言·golang
-银雾鸢尾-1 小时前
里氏替换原则
开发语言·c#·里氏替换原则
এ慕ོ冬℘゜1 小时前
JavaScript 数组核心方法实战|新增元素 + 数组转字符串 零基础详解
开发语言·javascript·ecmascript
一个初入编程的小白1 小时前
C语言:函数栈帧与销毁
c语言·开发语言
czhc11400756631 小时前
718:public internl class;partial []
开发语言
smj2302_796826521 小时前
解决leetcode第3989题网格中保持一致的最大列数
python·算法·leetcode
临床数据科学和人工智能兴趣组2 小时前
R语言因其强大的统计功能、灵活的编程环境、活跃的社区支持和强大的R扩展包,迅速成为统计学和数据科学领域的首选工具之一
开发语言·数据分析·r语言·r语言-4.2.1
__log2 小时前
弱网环境下的“生命线“:从AI流式响应到大文件上传的稳定性
开发语言·人工智能·php
吴梓穆2 小时前
Python 基础 正则表达式
python