ビジネスお役立ち情報 > 実務者のためのCAD読本 > BIMアプリケーションの使いこなし【3】IFC を使ってデータ互換(前編)

実務者のためのCAD読本実務者のためのCAD読本

実務者のためのCAD読本のトップへ

建築系CAD 講師:鈴木裕二

BIMアプリケーションの使いこなし 〜適材適所の使いこなし〜

第3回:IFC を使ってデータ互換(前編)/全5回

BIMアプリケーションの使いこなし【3】IFC を使ってデータ互換(前編)

1ArchiCADで柱や梁を作成すると

IFC(Industry Foundation Classes)というファイル形式がある。これはIAI(International Alliance for Interoperability)というBIMを推進する中立的な立場の団体が提案しているBIMの中間ファイル形式だ。2次元CAD でいうJw_cadとAutoCADの互換性を実現するDXFファイルのようなものだ。
どんな BIM アプリケーションでも IFCファイルを使えば共通フォーマットとしてデータのやりとりに使える、と言いたいところだが、なかなかそうはいかない。「IFCは使えない」という声すら聞かれることがある。
ここではRevitの構造モデルをArchiCADにIFC経由で渡して、何ができて何ができないのか検証してみよう。

構造モデルをRevitからArchiCADへ

構造モデルをRevitからArchiCADへ

2グラフィソフトが作ったRevitアプリ

RevitもArchiCADももちろんIFCファイルの読み書きをサポートしている。
Revitの開発元であるオートデスク社は、IFCファイルを書き出すプログラムの中身をプログラマー向けに公開している。必要に応じて自由に変更してくださいというオープンソースになっている。
一方ArchiCADの開発元であるグラフィソフト社もIFCファイルの普及に力を入れている。なんとライバルのRevitの上で動作するGRAPHISOFT ArchiCAD Connectionというツールまで配布している。このツールを使えばRevitの中からArchiCADで読めるIFCファイルを作ったり、ArchiCADで作られたIFCファイルをRevitで開いたりできるというわけだ。
ライバルのソフトウェアで使うツールを無料で配布するとはさすがOpen BIMのArchiCADだ。 このRevitで使うIFC変換ツールは各国語版が用意されている。グラフィソフトのInteroperability Downloadsサイト(http://www.graphisoft.com/support/archicad/downloads/interoperability/)から日本語版のツールを選んでダウンロードしてインストールする(氏名等の情報の登録が必要)。

グラフィソフト社のInteroperability Downloadsサイト

グラフィソフト社のInteroperability Downloadsサイト

3構造モデルをRevitからArchiCADへ

ArchiCAD接続GRAPHISOFT ArchiCAD ConnectionをRevitにインストールすると図のようにRevitリボンの「アドイン」タブに「ArchiCAD接続」パネルがあらわれる。
ここで使用するモデルは筆者がRevitで、ArchiCADのガイドラインモデルを最初から入力したものだ。鉄骨の部分は省略してあるが、図面通り正確に入力した。
次のようなオブジェクト(ファミリ)の種類が使われている。

●柱
●梁(Revitでは構造フレームという)
●壁
●床

マテリアルは見やすいように次の2種類を使い分けている。

●コンクリート(壁、床)
●コンクリート−現場打ちコンクリート(柱、梁)

用意したRevit構造モデル

用意したRevit構造モデル

4ArchiCADへエクスポート

Revitで「ArchiCADへエクスポート」ボタンを押すと次のようなダイアログボックスが表示される。設定をする項目はあまりない。 Revitでは1階から4階まで連続して1本の柱として配置したので、これを階ごとに分割できるよう「レベルで壁と柱を分割」にチェックを入れておく。

「ArchiCADへエクスポート」ダイアログボックス

「ArchiCADへエクスポート」ダイアログボックス

IFCへの書き出しが終了すると次のようなメッセージが表示される。通り芯も北方向の設定もIFCに書き出したというコメントである。
Revitの元のRVTファイルは5844 KBもあるが、できあがったIFCファイルのサイズは1231KBと、圧縮されていないテキストデータの割に大きくはない。

IFC書き出し終了のメッセージ

IFC書き出し終了のメッセージ

IFCへの書き出しで設定する項目がほとんどないのには理由がある。Revit本来のIFC書き出し設定で細かな設定ができ、それがそのままArchiCADへのエクスポートでも引き継がれるようになっているからだ。
Revitの「書き出し」→「オプション」→「IFCオプション」で図のようなダイアログボックスが表示される。例えば鋼構造の梁の継手を「構造接合」カテゴリで作成していて、それをIFCではIfcBuildingElementProxyクラスとして書き出すには図のように、Not Exportedの部分をIfcBuildingElementProxyに書きかえる。「ArchiCADへエクスポート」での細かな設定はRevit本来のIFC書き出しの機能をそのまま引き継ぐようになっている。

「書き出し」→「オプション」→「IFCオプション」でIFC設定

「書き出し」→「オプション」→「IFCオプション」でIFC設定

5ArchiCADでIFCを開く

ArchiCAD 16を起動し、「ファイルを開く」からRevitで作成したIFCファイルを指定して開く。ファイルの読み込みやインポートなどの特別なコマンドでなく、普通の「プロジェクトを開く」でIFCファイルを開く。ここで図のように「変換設定」であらかじめ設定されたフィルタなどを使うこともできるが、はじめから構造要素だけが書き出されたIFCファイルを使うので、「変換設定」では既定値の「一般的なトランスレータ」のままにしておく。

ArchiCADの「ファイルを開く」ダイアログボックス

ArchiCADの「ファイルを開く」ダイアログボックス

さて、うまくArchiCADではRevitで作成した構造モデルを読み込むことができただろうか?図のように見た目はほぼ同じ形状を再現できている。

書き出したIFCファイルをArchiCADで開く

書き出したIFCファイルをArchiCADで開く

6こんな問題が

実はこのモデルにはいくつか問題がある。
まず一部に緑色のマテリアルが表示されている。このようなマテリアルはRevit側では使っていない。
またArchiCADの「3D要素フィルタ」を使って柱、梁、壁、床の表示をオフにして、オブジェクトのみの表示にすると次の図のようになった。柱や梁でなくArchiCAD固有の「オブジェクト」という何にでも使える要素になってしまった。これでは困る。あくまで柱や梁として扱いたい。
よく見るとすべての柱や梁が「オブジェクト」になったのではなく、正しく変換されている柱、梁もある。また緑色で表示されたマテリアルの部材がすなわち「オブジェクト」になっているというわけでもなさそうだ。

「オブジェクト」になってしまった柱と梁

「オブジェクト」になってしまった柱と梁

7IFCビューワでチェック

Revitの柱、梁がArchiCADで柱、梁にならずに「オブジェクト」という要素になった。どの段階でそうなったのか、RevitからIFCを作った段階か、IFCをArchiCADが読み込んだ段階だろうか。IFCビューワと呼ばれるIFCファイルを開いて表示するツールがいくつか無料で公開されている。
まずはTekla BIMsight(http://www.teklabimsight.com/downloads.jsp)だ。
IFCファイルを開くと、問題の梁も図のようにきちんと表示されBeam(梁)と表示される。

Tekla BIMsightでIFCファイルを表示

Tekla BIMsightでIFCファイルを表示

もう一つのIFCビューワも試してみよう。Solibri Model Viewer(http://www.solibri.com/solibri-model-viewer.html)だ。ここでもIFCファイル上ではきちんとBeam(梁)であると表示される。

Solibri Model ViewerでIFCファイルを表示

Solibri Model ViewerでIFCファイルを表示

8問題は「重なり」にあった

このように「オブジェクト」になってしまった過程を調べていくと、問題の梁は2重書きされていたことが分かった。Revitで問題の梁を選択すると図のような警告が表示される。

Revitで二重になっていると警告

Revitで二重になっていると警告

つまりIFCは梁が同じ位置に二重で存在していてもそのまま作られるが、ArchiCADは同じ位置に二重の梁があることを許さない。それでArchiCADが重なっている一つを「オブジェクト」要素にしてくれたということだ。
スラブと梁の重なり、柱と壁の重なりでも同じことが言える。Revit側とIFCで許される重なりもArchiCADは許してくれない。Revitでの構造モデリングでは、はじめからArchiCADを意識したモデリングが必要になる。
梁と梁の重なりはさらにやっかいだ。Revitでは梁の端部の位置を相手に合わせて自動的に変更する機能があるが、これがIFC経由で相手がArchiCADだと問題になる。梁端部が重なっているがためだと思われるが、梁として変換されずに「オブジェクト」になってしまう。この場合は面倒でも梁を作りなおすか、「オブジェクト」のまま躯体として利用するしかない。「オブジェクト」を梁に変換する機能はArchiCADにはない。

9マテリアルは?

なぜか下左図のように多くの柱の材質が「IFC材質」になってしまった。正しくは下右図のようにArchiCAD独自の材質もIFCプロパティも「コンクリート−現場打ちコンクリート」でないといけない。

「IFC材質」となった柱と「コンクリート−現場打ちコンクリート」の柱

「IFC材質」となった柱と「コンクリート−現場打ちコンクリート」の柱

この修正は簡単だ。「検索と選択」で「IFC材質」の柱を選び、柱の設定で材質を「コンクリート−現場打ちコンクリート」とする。IFC要素のレイヤーは既定ではロックされているので、レイヤーロック解除を忘れないようにする。

「検索と選択」で「IFC材質」の柱を選ぶ

「検索と選択」で「IFC材質」の柱を選ぶ

10次は意匠モデル

Revit構造モデルをArchiCADに持ってくるだけでずいぶん紙幅を費やしてしまった。逆方向のArchiCAD意匠モデルをRevitにというのは次回後編で説明することにしよう。 画像だけ見ていただくと次のようになる。一見するとうまくいっているように見えるが果たしてどうだろう?

意匠モデルをArchiCADからRevitへ

意匠モデルをArchiCADからRevitへ

企業のITセキュリティ講座
企業のITセキュリティ講座