Tips集 スケジュール(Arch Schedule)ツールで面積や長さを集計する
FreeCADにはプロパティの数値を集計する スケジュール(Arch Schedule)ツールがある。これを使えばプログラムを作成しなくても床や壁の面積や部材の長さを集計することができる。
スプレッドシートでは、ひとつずつオブジェクトのプロパティにリンクする必要があるが、スケジュールを使うと、設定した条件でオブジェクトを自動的に抽出し、プロパティを集計することができるので、面積表や部材の数量集計に利用することができる。
ここからは、練習04モデル住宅で作成したデータを使って床面積と屋根面積の集計方法を検討する。
(内部の壁の位置と2Fのベランダを少し修正している。)
下欄の「行を追加」をクリックすると、条件入力の欄(行)が表示される。
キャンセルして、モデリング画面に戻り、条件入力できるようにモデルを少し修正する。
モデリングするときにSketcherで作成した壁芯図を下書きにして、各部屋の床範囲を作図する。
1階は左上から、浴室、洗面、便所1、階段1、キッチン、廊下1をはさんで、玄関、玄関ポーチ、リビング
2階は、倉庫、便所2、階段2、子供室、廊下2をはさんで、寝室、ベランダ
リビング上は吹抜けなので、床は作成しない。
今回は、長方形ツールで分割したが、連続線によるWireと混在することも可能である。プロパティにAreaがあれば集計することができる。
わかりやすいように部屋別に色分けしたが、色を変える必要はない。
データタブで各部分RectangleのLabelを部屋名に変更する。
グループ1F床範囲、1F屋外床、2F床範囲、2F屋外床を作成し、Rectangleをそれぞれの場所に移動する。
今回は、床範囲のRectangleで集計するが、スラブのプロパティで集計することもできる。その場合は、床範囲のRectangleをスラブオブジェクトに変換してグループに分ける。
構造体オブジェクトを屋根オブジェクトから 減算すれば、屋根オブジェクトのプロパティが残るので、面積も正しく計算される。
以上で、集計の準備ができたので、スケジュールツールで、床と屋根の面積を集計する。
設定には少し手間がかかるが、データの中から条件に適合するものを自動的に抽出し、スプレッドシートの集計表にまとめることができる。
モデルタブでデータの構成を確認する。
1F床範囲(内部名group)に1階の各室、1F屋外床に玄関ポーチ、2Fにもそれぞれの部分のRectangleが入っている。
データタブを見ると、Rectangleは建築オブジェクトではないので、IFCプロパティはない。
Areaに、Rectangleの面積が自動的に入っている。
スラブのプロパティを使って集計するときは、Slabのプロパティを見ると、HorizontalArea(水平面積)に面積が自動的に入っている。VerticalArea(垂直面積)は垂直面の面積の合計である。
IFCTypeは、Slabになっている。
屋根も見てみると、床と同様にHorizontalArea(水平面積)に面積が自動的に入っている。
2F屋根は構造体を減算したので、SubtractionsにStructureがある。
IFCTypeは、Roofである。
スケジュールをクリックして、スケジュール定義を出す。
行を追加を5回クリックして、条件設定の行を表示する。
面積集計の場合
説明は、内容のわかる名前を付ける。
1階床面積、1階屋外床、2階床面積、2階屋外床、屋根面積とする。
プロパティは、集計するプロパティ項目を記入する。object.プロパティ名である。プロパティは大文字小文字を識別する。文字の間にスペースは入れない。
・プロパティをCountとすると、オブジェクトの数を集計することもできる。
Rectangleの面積を集計するには、object.Areaとする。
スラブの場合は、object.HorizontalAreaとなる。
屋根は床と同じで、object.HorizontalAreaである。
建築オブジェクトは次のようなプロパティを集計することができる。
長さ:Length
幅: Width
高さ:Height
水平投影面積: HorizontalArea
垂直面面積合計:VerticalArea
水平領域の周長:PerimaeterLength
体積: Shape.Volume
単位は必ず記入する。m2、m^2のどちらでも記入できる。
・Countの場合は空欄でよい。
オブジェクトは、集計対象のオブジェクトまたは、グループの内部名を記入する。
記入する欄を選択し、モデルタブの対象オブジェクトをクリックして、下欄のAdd selectionをクリックすると、自動的に内部名が設定されるので、内部名を探さなくてもよい。
・オブジェクト欄を空欄にするとすべてのオブジェクトが対象になる。
フィルターは、オブジェクトで選択したものに条件を付けて抽出する。IFCTypeやLabelで抽出の有無を制御する。
屋根は、すべてのオブジェクトを対象とし、フィルターifctype:Roofとする。
□スプレッドシートに関連付けはONにして、モデルタブにResultオブジェクトを作成する。
□詳細な結果は、OFFにすると集計結果のみの表示となるので、通常はONにしてすべての要素を表示する。
条件入力にエラーがあるとResultが空欄になるので、大文字小文字の区別、スペースの有無、単位の記入などを確認する。
1階床面積には、玄関から階段1までの面積内訳とTOTALが入っている。
1階屋外床は、玄関ポーチとTOTAL。
2階床面積は、寝室から倉庫までとTOTAL。
2階屋外床はベランダとTOTALとなり、各部分の面積内訳と合計が自動的に作成される。
屋根は、全体のオブジェクトの中からIFCTypeがRoofのものが抽出されている。
Roof004は2階の屋根、RoofはR階の屋根である。
屋根の面積は、水平投影面積なので勾配屋根の場合は実際の面積にするには勾配分の割り増しが必要になる。
このようにスケジュールツールを使うと、条件に合うオブジェクトのプロパティを抽出して集計することができる。
柱のHeightや梁のLengthを集計すれば、構造部材の総延長を求めることができるので、体積や重量を計算するためのベースにすることができる。
スケジュールツールで、オブジェクトを抽出しプロパティを集計するためには、データを分類し、自動的に抽出できるようにグループ別に整理することが必要である。
コメント