2016年10月15日土曜日

ダイナモ白熱教室(11)-線分を壁に変換する

線を壁にする

ダイナモを使って線分から壁を立ち上げてみましょう。線分から壁をつくるシチュエーションとしては

  • エリア分割線から壁を作成
  • 読み込んだDWG/DXFの線分から壁を作成

などいろいろな場面で使えます。具体的にやってみましょう。

Revitでエリア線分を作成する

まず、エリア平面図を使って、線分で平面図をスケッチしてみます。

(1) プロジェクトを建築テンプレートで新規に作成
(2) [建築タブ]-[部屋とエリアパネル]-[エリア]-[エリアプラン]
(3) [レベル1]を選んで[OK]、[いいえ]
(4) [エリアの境界]で適当にプランを作成する
(5) エリアを配置する。
プランを作成

ダイナモを開く

このエリア境界線を壁に変換してみましょう。

(1) [管理]タブ-[ビジュアルプログラミング]-[Dynamo]でダイナモを起動。
2017では管理タブ
(2) [新規作成]

要素を選択

壁に変換するエリア境界を選択します。

(1) [Revit]-[Selection]-[Select Model elements]ノードを追加。
Select Model Elements
(2) [選択]を押して、窓で囲んでエリア境界とエリアをすべて選択する。
要素をすべて選択

モデル線分だけを選択する

[Core]-[Watch]ノードを追加し、つないでみると「ModelCurve」「Area」「AreaTag」が選択されていることがわかります。
複数のタイプの要素が選択されている。
このなかからはエリア境界線(デル線分)だけを選択します。

(1) [BuiltIn]-[RemoveIfNot]ノードと、[Core]-[Input]-[String]ノードを追加。
(2) Stringノードに「ModelCurve」と入力し、図のようにつなぐ
(3) [Watch]ノードをつなぎなおして、ModelCurveだけが選択されていることを確認する。
ModelCurveだけが選択された

ジオメトリを取り出す

壁を作成するノード [Revit]-[Elements]-[Wall]-[ByCurveAndLevels]ノードを追加してみます。
壁作成に必要な情報は

  1. カーブ(直線や円弧など幾何学的な位置情報) c
  2. 上のレベルと下のレベル                              endLevel startLevel
  3. 壁タイプ                                                      wallType

です。ModelCurveから純粋な幾何学情報(Curve)を取り出してみましょう。

(1) [Revit]-[Elements]-[Element]-[Geometry]ノードを追加し、図のようにつなぐ。
(2) [Watch]ノードをつなぎなおして結果を確認する。
ジオメトリの抽出

レベルと壁タイプ


(1) [Revit]-[Selection]-[Levels]ノードを追加し、「レベル1」「レベル2」を選択。
(2) [Revit]-[Selection]-[WallType]ノードを追加し、任意の壁タイプを選択。
(3) これらを下の図のように[Wall.ByCurveAndLevels]ノードに接続。
壁の作成

以上でエリア境界線上に壁が作成されます。Revitで確認してください。
壁が作成された
今回はエリア境界を使用しましたが、DWGを読み込んで分解した線分も同様に壁を立ち上げることができます。ライブラリにグラフを登録しておきますので参考にしてください。
全体像