BIM・IFCブログに戻る
「2階の間仕切り壁は何平方メートルあるか」と聞かれたとき、モデルは手元にあります。多くのIFCエクスポートにはすでに答えが入っています。壁、スラブ、梁はそれぞれ長さ、面積、体積、重量を持つIfcElementQuantityを保持でき、エクスポート時にオーサリングツール(BIMソフト)が書き込みます。問題は数値を得ることではありません。二重計上もなく、気づかないうちに欠けてもいない数値を得ることです。
この記事のポイント
- 数えたいものを選択し(クリック、範囲選択、タイプ、階のいずれでも可)、計測パネルから数量拾いを実行します。
- 要素ごと・種類ごとに1つの値、正味を優先します。NetSideAreaはGrossSideAreaより、NetVolumeはGrossVolumeより優先されます。どれを使ったかは列に表示されます。
- カバー率も答えの一部です。体積の横に「28/40」とあれば、12個の要素が合計から抜けています。
- IFCクラス、タイプ、階のいずれかでグループ化し、表をスプレッドシートにコピーするかCSVでダウンロードします。
- 数量はモデルのものです。数量が間違っていれば、数量拾いも忠実に間違えます。まずモデルを検証してください。
試してみる:実際のモデルで数量拾い
計測パネルを開いた状態でサンプルIFCが開きます。いくつかの要素(またはツリーから階全体)を選択し、パネルの「数量拾い」を押してください。

インタラクティブなIFCビューアーを開く
IFCの数量はどこから来るのか
数量はビューアーが三角形から計算するものではありません。オーサリングツールがIfcElementQuantityというプロパティセットに似たオブジェクトとしてファイルに書き込むもので、通常は標準の基本数量セットにちなんだ名前が付いています。Qto_WallBaseQuantities、Qto_SlabBaseQuantities、Qto_BeamBaseQuantitiesなどです[ifc-qto]。Revit、Archicad、Tekla、Allplanはいずれも書き出しに対応していますが、多くの場合「基本数量をエクスポート」のようなオプションにチェックを入れたときだけです。
ここから2つのことが言えます。数値はオーサリングツール自身のルール(開口を控除するか、層を結合するか)に従っており、通常はそれが望ましい結果です。そして、このオプションなしでエクスポートされたモデルには、形状がどれほど良く見えても数量がまったくありません。
| 要素 | 代表的な数量 | 数量拾いで使う値 |
|---|
| 壁 | Length, Height, Width, NetSideArea, GrossSideArea, NetVolume, GrossVolume | Length; NetSideArea; NetVolume |
| スラブ | Width, Perimeter, NetArea, GrossArea, NetVolume, GrossVolume | Perimeter; NetArea; NetVolume |
| 梁 / 柱 | Length, CrossSectionArea, OuterSurfaceArea, NetVolume, NetWeight | Length; OuterSurfaceArea; NetVolume; NetWeight |
| ダクト / 配管セグメント | Length, OuterSurfaceArea, GrossWeight | Length; OuterSurfaceArea; GrossWeight |
| ドア / 窓 | Width, Height, Area | Area(と個数) |
二重計上の落とし穴
NetSideAreaが10m²、GrossSideAreaが12m²の壁は、仕上げ10m²の壁1枚であって、22m²ではありません。ところが「Area型の数量をすべて合計する」(簡易スクリプトや汎用のプロパティ書き出しがやること)と22になります。間仕切りの多いフロアでは合計がほぼ倍になり、個々の数値は正しいため誤りが見えません。
数量拾いのルールは単純で、表に明記しています。各要素は種類(個数、長さ、面積、体積、重量)ごとに1つの値を、正味を総量より優先する優先順位リストから採用します。合計にカーソルを合わせると、どの数量名から取ったかが表示されます。積算担当者が総量で値入れする場合も、CSVの各行にその旨が記されます。
カバー率:数値の横にあるもう一つの数値
最も高くつく数量拾いのミスは、間違った値ではなく欠けた値です。リンクモデルから基本数量なしでエクスポートされた12枚の壁は合計にまったく現れず、合計には何の不審な点も見えません。
そのため、すべての合計にカバー率を付けています。グループ内のすべての要素がその数量を持っていない列には小さなアスタリスクが付き、ツールチップに「40要素中28要素が保持」と表示され、表の下には数量をまったく持たない要素の数が示されます。CSVにもカバー率が独立した列として書き出されるため、ファイルを受け取った人にも伝わります。
- カバー率40/40:その合計は、そのグループに対するモデルの完全な答えです。
- カバー率が個数未満:数量を持つ要素と持たない要素が混在しています。たいていはエクスポートが混在しています(2つのツール、2つの設定)。
- 数量がまったくない:基本数量をオンにして再エクスポートするか、面積・距離ツールでその要素を手作業で計測します。
グループ化:クラス、タイプ、階
同じ選択でも、問いによって読み方が変わります。IFCクラス別なら「壁、スラブ、梁はどれだけあるか」、タイプ別なら「W-200とW-100はそれぞれ何メートルか」(数量明細書の値入れの単位)、階別なら「2階には何があるか」(現場が工程を組む単位)に答えます。グループ化を切り替えると、表もCSVも追従します。
正しい要素を選ぶことが仕事の半分です。モデルツリーからタイプや階で、または検索からクラスで選びます。クラス自体が間違っている場合(壁がIfcBuildingElementProxyとしてエクスポートされているなど)は、グループ化ですぐに露呈します。なぜそうなるのか、エクスポートでどう直すかはIFCモデルのよくあるエラーで解説しています。
表から見積もりへ
- まず検証します。単位が間違っていたり、プロキシだらけだったりするモデルは、精密に見えて間違った表を生みます。
- 範囲(階、タイプ、工種パッケージ)を選び、数量拾いを実行します。
- カバー率を確認します。完全でないものには、再エクスポート、手作業での計測、除外の明記のいずれかを判断します。
- コピー(ExcelやSheetsに列として貼り付けられます)するか、CSVをダウンロードします。小数点にカンマを使うロケールでは、数値が数値として開けるようCSVの区切りにセミコロンを使います。
- 計測基準、ロス、単価は積算ツール側で適用します。モデルの数量は明細書の出発点であって、明細書そのものではありません。
IFCモデルからブラウザーで数量拾い:正味・総量と、数量を持たない要素