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库,

相关推荐
Csvn16 小时前
🌟 LangChain 30 天保姆级教程 · Day 13|OutputParser 进阶!让 AI 输出自动转为结构化对象,并支持自动重试!
python·langchain
Wenweno0o16 小时前
0基础Go语言Eino框架智能体实战-chatModel
开发语言·后端·golang
chenjingming66617 小时前
jmeter线程组设置以及串行和并行设置
java·开发语言·jmeter
cch891817 小时前
Python主流框架全解析
开发语言·python
不爱吃炸鸡柳17 小时前
C++ STL list 超详细解析:从接口使用到模拟实现
开发语言·c++·list
十五年专注C++开发17 小时前
RTTR: 一款MIT 协议开源的 C++ 运行时反射库
开发语言·c++·反射
Momentary_SixthSense17 小时前
设计模式之工厂模式
java·开发语言·设计模式
sg_knight17 小时前
设计模式实战:状态模式(State)
python·ui·设计模式·状态模式·state
好运的阿财17 小时前
process 工具与子agent管理机制详解
网络·人工智能·python·程序人生·ai编程
‎ദ്ദിᵔ.˛.ᵔ₎17 小时前
STL 栈 队列
开发语言·c++