Dynamo :: SubcategoryごとにGeometryを取得

 

DynamoでRevit内に配置されたFamilyからGeometryを取得する際、Categoryを元に選択することはよくあるかと思いますが、

試しに、RevitからリビングテーブルFamilyを、デフォルトのノードから取得すると、このように一つのリストに全てのGeometryが格納されます。

この場合、天板と幕板、脚のGeometryを別々に利用したい時には、インデックスなどから手動でリストを分けることになってしまいます。

そこで今回は、FamilyのSubcategoryを利用して、部材ごとにGeometryをリスト分けする方法について扱います。

 

レシピ

レシピは上図の通りです。(Dynamoのバージョンは2.0.1)

Subcategoryを取得するにあたり、Clockwork(2.x)とOrchidの2つパッケージを利用しています。

Orchidはパッケージマネージャーからではなく、GitHubからダウンロードします。

Orchid for Dynamo

ダウンロードされたファイルの[Builds]フォルダ内にインストーラーが格納されています。

それでは、順を追って説明します。

 

1.FamilyにSubcategoryを割り当て

まずは、Subcategoryごとにリストを分けるため、Revit内で元となるFamilyにSubcategoryを割り当てます。

ここでは、[リビングテーブル]Familyを編集して、Subcategoryを追加しました。

 

2.FamilyTypeからFamilyを取得

続いてDynamoに移り、[Family Types]ノードで対象のFamilyを選択し、

Orchidの[GetFamilyDocument]ノードに繋ぎます。

 

3.CategoryからSubCategoryを取得

Familyとは別に、[Categories]ノードからCategoryを選択し、Clockworkの[Subcategories]ノードへ繋ぎます。

 

4.FamilyとSubcategoryからElementを取得

最後に、Orchidの[ElementByCategory]ノードでSubcategoryごとにElementを取得し、[Geometry]ノードに繋ぐと、Subcategoryごとにリストが分かれたGeometryを取得することができました。

 

 

おわりに

いかがでしたか。Subcategoryは手動で割り当てる必要がありますが、Dynamoでは扱い易くなったのではないでしょうか。

ぜひお試しください。

 

使用した主なノード
  • [GetFamilyDocument] (Orchid > Elements > FamilyType > GetFamilyDocument)
  • [Subcategories] (Clockwork > Revit > Elements > Subcategories)
  • [ElementByCategory] (Orchid > Elements > Selection > ElementByCategory)

 

参考

Dynamo :: SubcategoryごとにGeometryを取得” に対して2件のコメントがあります。

  1. 匿名 より:

    はじめまして。
    大変すばらしいプログラムなので作成してみたいのですが
    うまくOrchidをセットアップすることができませんでした。

    [Builds]をダウンロードしフォルダ内にインストーラーで
    インストールしたのですがDynamoで使うには
    そのあとどうすればよろしいのでしょうか

    お手数ですがご教授お願いできれば幸いです。
    どうぞよろしくお願い致します。

    1. digiarchiryohta より:

      コメントありがとうございます。
      インストール完了後RevitとDynamoを再起動すればNodeのLibraryのAdd-Onsの一覧の中に出てくるはずなので、
      ・DynamoのバージョンとOrchidのバージョンがあっていない。
      ・[Settings → Manage Node and Package Paths]で、パッケージのパスが指定できていない。
      がありそうです。

      Revitから起動するDynamoのパッケージは、環境によりますが、通常[C:¥Users¥ユーザー名¥AppData¥Roaming¥Dynamo¥Dynamo Revit¥バージョン名¥packages]下に保存されているので、インストールがうまくいっていれば、こちらにOrchidのパッケージがあるはずです。

コメントを残す

次の記事

Dynamo :: モデルをAnimate