LoginSignup
0
0

PythonでIFCのモデルをglTFに変換する

Last updated at Posted at 2024-04-28

はじめに

IFCファイルのモデルを表示して閲覧するのって、ちょっと手間ですよね?
表示するには、Open IFC ViewerBIMvision のような専用のソフトウェアをPCにインストールする必要があります。

他の人にIFCのモデルだけ見せたいんだけど...というときにわざわざソフトウェアをインストールしてもらうのもちょっとためらいますよね。
IFCのモデルを特に環境を設定しないでも閲覧できる形式に変換したいときがあると思います。

そこでIFCのモデルをPythonを使って、3Dモデルのファイル形式の一つであるglTFに変換したいと思います。

glTFに変換できました

できたよ!やったね?

GitHub Gist: ifc2gltf.py

Babylon.js Sandbox で表示させれば、treeも表示できるよ!

ifc2gltf_tree.JPG

選択して非表示にしたり、移動したりもできるよ!(Xの投稿は階層構造ついてない)

経緯

最初は IfcOpenShell を使えば直接変換できるのではないかと思って調べたのですが、公式ドキュメントを見ると BlenderBIM Add-on を使う必要があり、直接変換することはできないようでした。

そういうわけで、IfcOpenShellpygltflibを使用して、自力で実装しています。

まとめ

IFCのモデルを階層構造付きでglTFに変換しました。
glTF形式にしておけば、Windowsのデフォルトでインストールされている3Dビューアーなどでも表示することができるので、ちょっとモデルを見るだけの用途であれば便利です。

え?解説?ほとんどglTFのフォーマットの話になってしまうので、ここではしません。
もしかしたら、別記事でPythonによるglTF出力方法の解説を書くかも?

参考

  • glTF

  • Web glTF ビューアー

Babylon.js Sandbox が一番使い勝手が良かった。Three.js実装のgltf-viewer はglTFファイルのフォーマットが誤ってるとどこがエラーか表示してくれるのでglTFフォーマットの確認に便利。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0