FRI3D BIM/IFC インポート
Industry Foundation Classes (IFC) データのインポート
はじめに
Industry Foundation Classes (IFC) は、建築物およびインフラストラクチャの情報を記述するために buildingSMART International が開発した、オープンで標準化されたデータモデルです。 IFC は ビルディング・インフ ォメーション・モデリング (BIM) の相互運用性の基盤であり、 異なるソフトウェアアプリケーション間で、建物の構成要素・材料・システムに関する 3D ジオメトリと豊富なセマンティックデータを交換できるようにします。
IFC スキーマは、壁、ドア、梁、HVAC システム、防火設備など、物理的・論理的な建物要素の 中立でオブジェクト指向な表現を提供します。 IFC ファイル内の各要素は、その役割、属性、および他のエンティティとの関係を規定する明確に定義されたクラスに属します。
IFC スキーマの概要
IFC は大規模なエンティティクラスの階層を定義しており、おおまかに以下の概念的なレイヤーに整理されています。
| カテゴリ | 説明 | 代表的な例 |
|---|---|---|
| IfcRoot | すべての IFC オブジェクトの基底クラス。グローバル ID、所有情報、名前/説明フィールドを提供します。 | IfcProject, IfcSite, IfcBuilding, IfcElement |
| IfcProduct | 建築環境における有形・空間的・物理的な要素を表します。 | IfcWall, IfcBeam, IfcDoor, IfcSlab |
| IfcSpatialStructureElement | プロジェクトの空間階層(敷地 → 建物 → 階 → 空間)を定義します。 | IfcBuilding, IfcBuildingStorey, IfcSpace |
| IfcElement | 個々の建物構成要素を表します。 | IfcWall, IfcWindow, IfcColumn, IfcPipeSegment |
| IfcDistributionElement | 建築設備および MEP(機械・電気・配管)の構成要素を対象とします。 | IfcFlowSegment, IfcFlowTerminal, IfcFlowController |
| IfcMaterialDefinition | 要素に割り当てられる材料、レイヤー、複合材を定義します。 | IfcMaterial, IfcMaterialLayerSet |
| IfcPropertySet | IFC 要素にカスタム属性やメタデータを付加します。 | Pset_WallCommon, Pset_DoorCommon |
| IfcRelationship | オブジェクト間の接続や関連付けを記述します。 | IfcRelContainedInSpatialStructure, IfcRelDefinesByProperties |
FRI3D における IFC インポート
FRI3D のインポートシステムは IFC ファイルを読み込み、そのエンティティを内部カテゴリにマッピングします。IFC データを FRI3D に取り込む方法は 2 つあります。 GUI を使用する方法と、コマンドラインツールを使用する方法です。
GUI: Import IFC
IFC ファイルを FRI3D にインポートするには、Import CAD メニュー/シェルフツールを使用します。この方法ではすべてが FRI3D にインポートされます。より細かく制御した インポートを行いたい場合は、コマンドラインツールの方が適しています。
コマンドラインツール: Import_IFC
インポートは Import_IFC 実行ファイルによって行われます。コマンドプロンプトまたはスクリプトから次のように実行します。
Import_IFC.exe <ifcpath> <projectpath> [options]
- ifcpath — IFC ファイルへの絶対パスまたは相対パス。
- projectpath — FRI3D プロジェクトファイル(例:
project.fri3d)への絶対パスまたは相対パス。プロジェクトが存在しない場合は作成され、インポートが成功するとツールはプロジェクトを projectpath に保存します。
引数なしで実行するか、--help(または -h、-?、/?)を指定すると使用方法が表示されます。
| 引数 | 必須 | 説明 |
|---|---|---|
| ifcpath | はい | インポートする IFC ファイルへのパス。 |
| projectpath | はい | FRI3D プロジェクトへのパス(例: MyProject.fri3d)。存在しない場合は作成されます。 |
オプション(大文字・小文字を区別しません。接頭辞として /、-、-- のいずれかを付けます):
| オプション | 説明 | デフォルト |
|---|---|---|
| Zone zonename | インポートしたジオメトリを配置するゾーン/区画の名前。 | (空) |
| ReplaceProject | インポート前に projectpath に新しいプロジェクトを作成します(既存のものを上書きします)。true/false、T/F などを指定できます。 | false |
| LoadBuildingElements | IfcBuildingElementProxy エンティティを含めます。 | false |
| LoadRailings | IfcRailing エンティティを含めます。 | false |
| LoadStairs | IfcStair および IfcStairFlight エンティティを含めます。 | false |
| Help | 使用方法とヘルプを表示します。 | — |
ブール値のオプションには値を渡すことができます(例: --ReplaceProject true、-LoadStairs false)。値を省略した場合は true とみなされます。Zone は次の引数をゾーン名として受け取ります(例: -Zone Building1)。
インポートされる内容:
- ゾーン: Zone(または 3 番目の位置引数)で指定した名前のゾーンが 1 つ作成(または使用)されます。
- コンポーネント: 建物要素および MEP 要素がコンポーネントとしてインポートされます(下記の一覧を参照)。
- レースウェイ: IfcCableCarrierSegment および IfcCableCarrierFitting がレースウェイとしてインポートされます。
- ベント: IFC モデル内のベント(開口)に相当する要素。
- 3D ジオメトリ: FRI3D プロジェクトで表示するためのメッシュおよびバウンディングボックスデータ。
常にコンポーネントとしてロードされる IFC タイプ(オプションで許可されている場合): フロー/分配系(例: IfcFlowTerminal、IfcDistributionElement、IfcPipeFitting、IfcFlowSegment)、建物要素(IfcColumn、IfcPlate、IfcWall、IfcSlab、IfcWindow、IfcDoor、IfcBeam など)、その他(IfcElement、IfcFurnishingElement、IfcFurniture、IfcSite)。IfcGrid はコンポーネントとしてロードされ ることはありません。
オプション指定の IFC タイプ(デフォルトでは除外): LoadBuildingElements → IfcBuildingElementProxy、LoadRailings → IfcRailing、LoadStairs → IfcStair, IfcStairFlight。オプションがオフの場合、これらのタイプはコンポーネント、ゾーンとコンポーネントのリンク、および 3D ジオメトリの対象から除外されます。
使用例:
Import_IFC.exe C:\Models\building.ifc C:\Projects\building.fri3d -Zone Building1
Import_IFC.exe model.ifc project.fri3d -Zone Main -ReplaceProject
Import_IFC.exe model.ifc project.fri3d --Zone CompartmentA --LoadBuildingElements --LoadRailings
Import_IFC.exe model.ifc project.fri3d -Zone Main -LoadStairs
Import_IFC.exe --help
インポートワークフロー
- 解析(Parsing): IFC ファイルは IFC4x3 互換のリーダーで解析されます。
- 分類(Classification): 各エンティティについて、IFC クラスタイプと関連するプロパティセットが調べられます。
- タグ付け(Tagging): 要素は FRI3D の内部カテゴリ(例:
Boundaries、Simulation Items/Vents、Equipments、Raceways/Trays)にタグ付けされます。 - ジオメトリ抽出(Geometry Extraction): サーフェスジオメトリは
IfcShapeRepresentationから読み込まれるか、パフォーマンスのためにバウンディングボリュームへ簡略化されます。
タグ付けの要件
正確な分類とシミュレーション挙動のためには、 エクスポート前に、要素がソース BIM ソフトウェア(Revit、ArchiCAD、Tekla など)で適切にタグ付けされていることが FRI3D では必要です。 これにより、IFC インポーターが火災に関連する要素を正しく識別できるようになります。
| FRI3D タグ | 想定される IFC クラス | IFC 名の例 | 目的 |
|---|---|---|---|
Boundaries | IfcWall, IfcSlab, IfcCovering | FireRatedWall_120min | 区画境界と防火区画ゾーンを定義します |
Simulation Items/Vents | IfcDoor, IfcWindow, IfcOpeningElement | ExitDoor_Main | 煙流動と避難経路のための開口部を定義します |
Equipments | IfcFlowTerminal, IfcDistributionElement | SmokeDetector_01 | アクティブな防火設備および HVAC 要素を識別します |
⚠️ 重要: FRI3D は、インポート時にジオメトリを自動的に分類・グループ化するために、これらのタグと IFC クラスのマッピングに依存しています。 タグ付けされていない要素や誤分類された要素は、無視されるか、デフォルトの不燃性挙動が割り当てられる場合があります。
サポートされる IFC バージョン
FRI3D は現在、以下をサポートしています。
- IFC4 および IFC4x3 スキーマ(推奨)
- レガシーデータセット向けの IFC2x3 への部分的な後方互換性
ベストプラクティス
BIM ソフトウェアからのエクスポート前
-
モデルを整理する
- 一 貫した命名規則を使用する
- 各部屋またはゾーンに対して空間(
IfcSpace)を定義する - 区画を IfcSpace で整理する — 各区画 = 1 つの IfcSpace
- 関連する要素を論理的にグループ化する
- 不要な詳細や一時的なジオメトリを削除する
-
要素を適切にタグ付けする
- 正しい IFC クラスを割り当てる(可能な限り汎用的な
IfcProxyを避ける) - 開口部(ドア、窓)を IfcDoor/IfcWindow などで明確にマークする
- 正しい IFC クラスを割り当てる(可能な限り汎用的な
-
エクスポート設定
- IFC4 または IFC4x3 スキーマを使用する
- ジオメトリを含める(メタデータのみにしない)
- プロパティセットをエクスポートする(基本プロパティのみにしない)
- ファイルサイズと詳細度のバランスを考慮する
FRI3D へのインポート後
-
分類を確認する
- インポートログで警告やエラーを確認する
- 要素数が想定どおりであることを検証する
- 空間構造の階層を確認する
-
ジオメトリを検証する
- 3D ビューで欠落または破損した要素がないか点検する
- 防火バリアに隙間や重なりがないか確認する
- 開口部が正しい位置にあることを検証する
インポート手順
1. IFC ファイルを準備する
FRI3D にインポートする前に、IFC ファイルが適切に準備されていることを確認してください。
- BIM ソフトウェアからエクスポートする: Revit、ArchiCAD、Tekla、またはその他の IFC 対 応ソフトウェアを使用します
- IFC バージョンを確認する: 最良の互換性を得るため、IFC4 または IFC4x3(推奨)としてエクスポートします
- 要素をタグ付けする: 火災に関連する要素が適切な IFC クラスで正しくタグ付けされていることを確認します
- ファイルサイズを確認する: 大きな IFC ファイル(100MB 超)は、簡略化または分割が必要になる場合があります
2. FRI3D にインポートする
- FRI3D を開く
- コマンドラインで "Import CAD.exe" を実行する
2.1 例:
.\Import_IFC.exe "D:\Building_import_test.ifc" "D:\Newcleo.fri3d" "NEW" "T"。"NEW" は区画の名前です。 - 解析を待つ: FRI3D のインポートが IFC ファイルを解析し、進捗を表示します
- .fri3d をロードする: 生成された .fri3d ファイルをロードします
3. インポート後の検証
インポート後、以下を確認してください。
- 空間構造: 建物の階と空間が正しく識別されていることを確認します
- 要素の分類: 壁、ドア、その他の要素が正しくタグ付けされていることを検証します
- 材料特性: 火災シミュレーションの精度のために、材料の割り当てを確認します
- ジオメトリの品質: ジオメトリの欠落や破損がないことを確認します
ファイル形式の詳細
IFC ファイルの構造
IFC ファイルは通常、テキストベースの表現で ある STEP Physical File (SPF) 形式で保存されます。
| 構成要素 | 説明 | 例 |
|---|---|---|
| ヘッダー | ファイルのメタデータ、スキーマバージョン、プロジェクト情報 | FILE_SCHEMA(('IFC4')); |
| データセクション | 一意の ID を持つエンティティ定義 | #123= IfcWall(...); |
| 参照 | エンティティ間の関係 | #456= IfcRelContainedInSpatialStructure(...); |
一般的な IFC ファイル拡張子
.ifc- 標準的な IFC ファイル(テキストベースの SPF 形式)
よくある問題とトラブルシューティング
問題 1: 要素が正しく分類されない
症状: 壁、ドア、その他の要素が汎用ジオメトリとして表示される
解決策:
- ソース BIM ソフトウェアで IFC クラスタイプを確認する(例: 壁が
IfcProxyではなくIfcWallになっていることを確認する) - 要素に適切なプロパティセットが割り当てられていることを確認する
問題 2: ジオメトリの欠落
症状: インポート後、一部の要素が 3D ビューに表示されない
解決策:
- 要素に有効な
IfcShapeRepresentation定義があることを確認する - Import_IFC で正しいコマンドラインオプションを指定していることを確認する。たとえばデフォルトでは IfcBuildingElementProxy はロードされません。
- IFC のエクスポート設定を確認する(メタデータだけでなくジオメトリが含まれていることを確認する)
- 別の IFC エクスポートオプションでソースソフトウェアから再エクスポートを試す
問題 3: 座標系の不一致
症状: モデルが誤った位置や向きで表示される
解決策:
- IFC ファイル内の
IfcSiteおよびIfcBuildingの配置を確認する - ソース BIM ソフトウェアの座標系設定を確認する
- 必要に応じて FRI3D の座標変換ツールを使用する
問題 4: 大きなファイルでのパフォーマンス問題
症状: インポートが遅い、または FRI3D が応答しなくなる
解決策:
- エクスポート前にソース BIM ソフトウェアでジオメトリを簡略化する
- 大きなモデルを複数の IFC ファイルに分割する(建物ごと、または階ごと)
- エクスポート時に IFC 簡略化ツールやフィルターを使用する
- 重要度の低い要素にはバウンディングボックスによる簡略化を検討する
他のインポート形式との比較
| 形式 | セマンティックデータ | ジオメトリ品質 | 防火・火災安全データ | 推奨用途 |
|---|---|---|---|---|
| IFC | ✅ 豊富(BIM クラス、プロパティ、関係) | ✅ 高い(BREP ソリッド、サーフェス) | ✅ 優れている(耐火等級、材料) | BIM ベースの火災解析の第一選択 |
| STEP/IGES | ⚠️ 限定 的(ジオメトリのみ) | ✅ 高い(BREP ソリッド) | ❌ なし | 機械設備、プラント設計 |
| OBJ/glTF | ❌ なし(ジオメトリのみ) | ⚠️ 中程度(メッシュ) | ❌ なし | 可視化、コンテキストモデル |
| ネイティブ CAD | ⚠️ さまざま | ✅ 高い | ⚠️ さまざま | CAD との直接統合(対応している場合) |
推奨: 火災安全解析ワークフローでは、 豊富なセマンティックデータと標準化された火災安全プロパティを備えているため、IFC を強く推奨します。
引用
本資料を出版物やドキュメントで参照する場合は、次のように引用してください。
FRI3D Documentation: Industry Foundation Classes (IFC) Import and Classification Guide. Centroid LAB, 2025. https://centroidlab.com/fri3d/docs/
次のステップ
IFC モデルのインポートに成功したら、次に進みましょう。
- 火災シナリオを設定する - 火源、着火点、解析パラメータを設定します
- 区画を定義する - 火災区画の境界を確認・調整します
- 材料を割り当てる - 正確なシミュレーションのために材料特性を確認・調整します
- 解析を実行する - インポートしたモデルを使用して火災動力学シミュレーションを実行します
- 結果を可視化する - 火災、煙、熱の結果を分析・可視化します
その他のインポート形式については、以下を参照してください。