Revit を使ったことがない方でも、ファミリやファミリ エディタが、Revit を効果的に使用するうえでいかに重要であるかが分かるはずです。Revit で作成したものはすべて、ファミリに属します。そのため、ファミリについて理解すること、またファミリを扱うために必要なことについて理解することは、このソフトウェアを習得するうえで非常に重要です。このセクションでは、まずシステム ファミリとコンポーネント ファミリの違いを説明し、その後、重要な概念と用語について詳しく見ていきます。また、Revit のライブラリに含まれるものを簡単に紹介するとともに、ファミリ テンプレートについても説明します。これらの用語を簡単に紹介した後で、コンポーネント ファミリの作成方法と操作方法を、ステップバイステップで詳しく説明します。ここで紹介する概念やテクニックを基に、Revit ソフトウェア パッケージの非常にパワフルな機能の 1 つである Revit ファミリ エディタの初めの一歩を踏み出すことができるでしょう。
Revit のすべての要素はファミリに属している
ファミリ エディタを使用するためには、最初にいくつかの基本的な概念と用語について理解する必要があります。Revit プラットフォームのすべての要素はいずれかのファミリに属しているとともに、明確に定義された階層に属しています。この階層の最上位にあたるのが「カテゴリ」です。カテゴリはソフトウェア内であらかじめ定義されていて、追加したり削除したり名前を変更したりすることはできません。Revit には多様なカテゴリがあり、これらのカテゴリはいくつかの全体的な上位グループに分類されます(上位グループは、モデルや注釈などいくつかあります)。上位グループの 1 つであるモデル カテゴリには、建物モデルを構成するすべての要素(壁、ドア、床、階段、梁など)が含まれます。また注釈カテゴリには、テキスト、寸法、タグなどが含まれます。カテゴリの定義はきわめて広範にわたります。壁とドアのカテゴリしかなかったとしたら、使い物にはなりません。こうしたアイテムの形、サイズ、動作はさまざまとなります。カテゴリの下のレベルの階層である「ファミリ」は、そのためのものです。Revit のすべての要素はファミリに属しています。ファミリとは、同じ外観や動作をもつ、類似した項目を集めたもの、と考えると分かりやすいでしょう。Revit には、壁ファミリである「標準壁」や、ドア ファミリである「片開きフラッシュ」、注釈ファミリである「テキスト」や「長さ寸法スタイル」など、数多くのファミリがあります。平面図や断面図などの「ビュー」も、Revit のシステム ファミリに含まれます。
ファミリは、動作に基づき大きく 2 種類に分類されます。システム ファミリとコンポーネント ファミリ(ロード可能なファミリ)です。ソフトウェアに組み込まれていて、ユーザーがインターフェイスで変更を加えることができないものはすべて、システム ファミリに含まれます。たとえば、壁や床などのモデル コンポーネントだけでなく、同じく重要な要素である平面図、プロジェクト データ、レベルなども、これに該当します。システム ファミリは、作成することも削除することもできません。そのプロパティは、あらかじめ初期設定されています。ただし、壁、床、屋根など、ほとんどのシステム ファミリには、複数の「タイプ」があります。ファミリの下のレベルの階層が「タイプ」となります。特定の値に保存された変数(サイズ、マテリアルなどの設定)の集まりに対し、使いやすいように名前を割り当てたものがタイプであると考えてください。タイプがあることで、1 つのファミリに含まれるさまざまな変数を一度に簡単に切り替えることができます。1 つのファミリにはタイプが複数含まれる可能性があります。そして各タイプが固有に設定されていて、ユーザーはこの設定を編集できます。つまり、たとえば壁ファミリを作成したり削除したりすることはできませんが、個々の壁ファミリのタイプを追加、削除、編集することはできます。たとえば「標準壁」は、一般的によく使用される壁ファミリです。初期設定で用意されているテンプレート ファイルには、「外壁 - CMU のレンガ、一般 - 6"」や「内壁 - 5 1/2" 間仕切り (1hr)」など、いくつかの標準壁タイプがあらかじめ定義されています。「標準壁」とは、層状の壁が、全長と全高にわたって同じ構造になっているものを指します。そして実際の構造は、「タイプ」という名前の示すとおり、それぞれに大きく異なります。
その他のシステム ファミリも、それぞれの構成や機能は千差万別ですが、概念レベルでは共通の基本特性を有しています。つまり、オブジェクトの全体的な動作はシステムによって定義されていて変更できないものの、オブジェクト レベルの各パラメータは、タイプやインスタンスを作成、変更することで編集できます。
前述したように、システム ファミリには、Revit プロジェクト内の物理的なモデル(壁、床、屋根など)に属するものと、その他のもの(ビュー、プロジェクト データ、レベルなど)があります。さらに、システム ファミリのうちモデル要素でもあるものは、「ホスト」要素と呼ばれます。ホストとは、他のモデル要素を受け取ったり支えたり、他のモデル要素の構造を提供したりする要素を指します。ホストは、コンポーネント ファミリの多くに必要となります。たとえばドアや窓には壁ホストが必要で、照明器具には、しばしば天井ホストが必要となります。
コンポーネント ファミリ(ロード可能なファミリ)には、システム ファミリ以外のものすべてが含まれます。多くのコンポーネント ファミリはモデル要素ですが、注釈などモデル要素ではないものもあります。コンポーネント ファミリには、「ホストベースの」(ホストが必要な)要素と、「独立した」(ホストが必要でない)要素があります。Revit ユーザーは、コンポーネント ファミリ(とそのタイプ)を作成、削除、変更できます。そうした作業はファミリ エディタで行い、作成したファミリは、それぞれ固有のファイルに RFA という拡張子で保存できます。システム ファミリと同じく、コンポーネント ファミリにも複数のタイプが含まれる場合があります。さらにコンポーネント ファミリには、インスタンスごとに異なる(タイプに含まれない)インスタンス パラメータが含まれる場合があります。システム ファミリとは異なり、コンポーネント ファミリは、エンド ユーザーがファミリ エディタで完全にカスタマイズすることができます。
この記事では主に、ロード可能なコンポーネント(モデル)ファミリについて説明します。
Revit には 3 種類のファミリがあります。前述のシステム ファミリとコンポーネント ファミリ、そして「インプレイス ファミリ」です。インプレイス ファミリの作成、編集、操作方法は、コンポーネント ファミリに似ています。ただしインプレイス ファミリは、(コンポーネント ファミリのように個別のファミリ ファイルによってではなく)プロジェクト内で直接作成します。そして他のプロジェクトにエクスポートすることはできません。また、システム ファミリの多くのカテゴリ(壁、屋根、床など)のインプレイス バージョンを作成することができます。この機能を使えば、既定のシステム ファミリでは作成できない、カスタム形状やフリーフォーム形状を作成できます。インプレイス ファミリの作成に適しているのは、今後のプロジェクトで再利用する可能性がほぼない、特定のプロジェクトに固有の要素に限ります。また、前述したように、インプレイス ファミリは、壁や屋根といった特定のシステム ファミリを「カスタマイズ」する唯一の手段となります。そのため、インプレイス ファミリを効果的に利用できるのは、独特な現況をモデリングする場合や、かなり特殊でユニークな設計シナリオをモデリングする場合となります。インプレイス ファミリを使用して必要な項目を作成する場合は必ずその前に、既定のシステム要素やコンポーネント ファミリを使用して作成することができないかを検討しましょう。こうした他の手段で作成できない場合に限り、最終手段としてインプレイス ファミリを使用します。なぜなら、インプレイス要素を作成することが名案に思えても、後から後悔することになる場合がよくあるからです。この記事では、インプレイス ファミリの詳細までは説明しません。
Revit とファミリの用語
Revit の建築設計に関する重要な用語を以下に簡単にまとめました。このイラストは、数バージョン前のオンライン ヘルプ ファイルから抜粋したものです。最新のヘルプ システムには異なるバージョンがありますが、私はこのイラストの方が気に入っています。Revit 環境における各種要素がうまくまとめられていると思うからです。
要素:Revit の建築設計プロジェクトに含まれるすべてのもの(斜体で示される要素は、ファミリ エディタで作成・編集できます)。
モデル要素:建物の実際のジオメトリを表すもの。
ホスト要素:他のモデル要素を受け取ったり支えたり、他のモデル要素の構造を提供したりする要素(組み込みの配置構成)。
コンポーネント要素:プロジェクトに挿入される項目(あらかじめ製造、購入、設置されている項目)。独立した要素、またはホストが必要な要素となります。
ホスト ベースのコンポーネント要素:ホストに挿入する必要のあるコンポーネント要素。
独立したコンポーネント要素:ホストがなくても単独で挿入できるコンポーネント要素。
ビュー要素*:他のさまざまな要素を表示したり操作したりするために使用される、Revit インターフェイス内の項目。ビューは、平面図、断面図、立面図、集計表など、一般的な建築図面タイプの特性に従います。ビュー要素ファミリは、タイプをカスタマイズできるものも一部ありますが、大部分は対応していません。
データム要素*:レベル、通芯、参照面などが含まれます。プロジェクトのコンテキスト、制限、範囲などの定義に使用されます。データム要素は、プロジェクト内の他の要素のガイドラインや制限を提供するほか、注釈機能を提供する場合もあります。データム要素のファミリとタイプは編集できません。
ビュー固有の要素:プロジェクトのビューのドキュメント化、記述、装飾に使用されます。ビュー固有の要素は、他のビューでは自動的に表示されません。ビュー固有の項目を他のビューで再現したい場合は、それらの項目をコピー/貼り付けします。
詳細要素:モデル要素を表す 2 D のファミリです。モデルでは非実用的な細かいレベルでモデル要素を表します。詳細要素が追加されているビューのみで表示されます。詳細要素は、作成時の実際のサイズを保持し、ビューに合わせてサイズ調整されることはありません。
注釈要素*:たとえばテキスト、寸法タグ、記号が含まれます。ビュー固有の項目で、注釈要素が追加されているビューのみで表示されます。Revit の建築設計プロジェクトに含まれる設計意図の注記、装飾、記述、ドキュメント化に使用されます。注釈要素は、ビューの印刷尺度に対して一定のサイズに保たれることで、配置先のシートに対して相対的に一定のサイズを維持します。
*レベル タグや通芯記号タグ、断面記号や立面記号のタグ、モデル要素のタグと記号(一般注釈ファミリ)は、ファミリ エディタで作成・編集できます。テキストと寸法は、作成も編集もできません。
上のツリー図の各ノードの多くに、システム ファミリとコンポーネント ファミリの両方が含まれています。ここではファミリ エディタについての説明なので、システム ファミリ以外のファミリだけにフォーカスすることはしません。システム ファミリ以外のファミリには、モデル要素の「コンポーネント要素」のすべての項目、「詳細要素」の「詳細項目」ファミリ、「注釈要素」の「ロードされたタグ」のほか、タイトルブロック ファミリ、ビュー タグ、レベル記号など、いくつかの要素があります。
ファミリ ライブラリとリソース
Revit でファミリの構築を始めるための最初のステップは、ここで紹介した用語について十分に理解することです。この図を、必要に応じていつでも参照できるようにしておきましょう。また、ファミリ コンテンツの構築作業を始める前に、このソフトウェアにはたくさんのファミリが組み込まれていることや、その他にも数多くのリソースがオンラインで公開されていることを覚えておいてください。Google で少し検索すれば、ヒントやテクニック、ダウンロード可能なコンテンツが掲載されたサイトが多数見つかります。これまで検索したことがない方は、すぐに利用できる既成コンテンツや多数の公開サイトを確認してみましょう。
前述の通り、システム ファミリを作成したり削除したりすることはできません。システム ファミリはすべて、最初からプロジェクト ファイルに含まれています。システム ファミリに存在しないタイプを追加したければ、既存のタイプを複製し、名前を変更して編集するか、他のプロジェクトからインポートする必要があります。他のプロジェクトからインポートするには、[プロジェクト標準を転送]([管理] タブ)を使用するか、コピー/貼り付けします。
現在のプロジェクトで外部のコンポーネント ファミリを使用する場合は、それをファミリ ファイル(RFA)からロードするか、他のプロジェクトからコピー/貼り付けします。ファミリ ファイルをロードするには、リボンの [挿入] タブの [ファミリをロード] ボタンを使用するか、コマンドがアクティブなときにコンテキスト リボン タブを使用します。たとえば、[ドア]ツール([建築] タブ)をクリックすると、[修正 | ドアを配置] タブに [ファミリをロード] ボタンが表示されます。この手順を繰り返すことですべてのドア ファミリをロードし、配置できます。また、リボンの [挿入] タブの [Autodesk Seek] パネルで、Revit から直接 Autodesk Seek の Web サイトにアクセスして検索することもできます。また、Web ブラウザーに「seek.autodesk.com」と入力する方法もあります。
多くの場合、作成したいファミリと類似するものは、既にどこかに存在します。製品内で見つかることもあれば、膨大なオンライン リソースから見つかることもあります。また、大半の企業は、自社の標準コンテンツを集めた独自のライブラリを社内サーバーで管理しています。ご自身の会社にどんなコンテンツがあるかについては、社内の CAD/BIM 管理者に確認してください。
お勧めのプロジェクト開始方法
まずはライブラリを確認し、そこにあるものをそのまま使用するか、必要に応じて変更を加えるのが効率的な方法です。通常、ゼロから作成するよりもその方が簡単です。期日に追われながらこなす日々の業務では特に、それが最良のアプローチとなるでしょう。ただし実際のプロジェクトで使用する前に、未知のコンテンツや新たにダウンロードしたコンテンツについては、会社の基準を満たしているかどうかを確認しましょう。
Revit でファミリを作成するのが初めての方は、まずいくつかのファミリをゼロから作成してみることをお勧めします。ファミリ全体を自分で作成してみると、ただ変更を加えるよりも多くのことを学ぶことができます。さらに、ファミリにはきわめて複雑なパラメータや拘束が含まれている場合があります。さらにそれらは数珠つなぎに関連し、複雑に入り組んでいることもあります。ファミリ コンテンツの作成に熟練している方でさえ、こうした複雑な関係性を詳細に理解するのは難しい場合があります。途中でめげることのないように、まずは小規模で単純なものから始め、徐々に複雑なものに取り組むことをお勧めします。
たとえば、最初からドア ファミリや窓ファミリを作成しようとしないでください。これらは見た目以上に複雑です。最初のうちは、簡単な家具や機器など、小さくて単純な箱状のものから始めましょう。
ファミリの作成手順
ここからは、ファミリの基本的な作成手順を説明します。まず、どのようなタイプのファミリが必要かを決めます。たとえば、どのような外観にするか、どこまで細かいディテールを含めるか、ビューごとにグラフィックや詳細レベルを変えるかどうかを検討します。はじめに作成しようとしているファミリの概略を紙に描き、その要件をメモしましょう。
次に、適切なテンプレートから新しいファミリ ファイルを作成するか、作成したいファミリに似た既存のファミリ ファイルを開いて別名保存します。ファミリ テンプレートの選択は重要です。ソフトウェアに付属するテンプレートは、オートデスクが製品とともに提供しているものです。それぞれのテンプレートには、基本的な設定と動作、そして多くの場合、シンプルなジオメトリや参照面がいくつか含まれています。付属のジオメトリ(壁の長さのサンプルなど)はあくまで参考用で、プロジェクトに使用されてもファミリには挿入されません。ファミリのカテゴリは、作成後に変更することもできますが、最初に最適なものを選択するのがベストです。できるだけ最適なカテゴリを選ぶようにし、適切なカテゴリが見当たらない場合のみ Generic Model.rft を選択します。ファミリ ファイルのホストの動作は、カテゴリとは違って、作成後に変更できません。したがって、作成中のファミリにホストが必要であるかどうかがはっきりしない場合は、ホストなしで作成した方が無難です。つまり Casework wall based.rft をテンプレートとして選択した場合、作成するファミリを挿入するためには、必ず壁が必要となります。キャビネットを独立した収納家具として使用したい場合は、Casework.rft テンプレートの方を使用します。ホストなしのキャビネットは、後から[位置合わせ]ツールを使用すれば、いつでも壁面に移動できます。一方、ホストされている収納家具項目を、そのホストである壁から後で切り離すことはできません。
何を建築するかを決め、既存のファイルまたは適切なテンプレートに基づいて新しいファミリ ファイルを作成すれば、ファミリの参照面、パラメータ、ジオメトリを作成できます。通常は、フレームワークから始めるのがよいでしょう。既存のファミリをベースに始める場合は、まず不要な要素をすべて削除してください。次に、必要な参照面を追加します。これは既存のファミリを使用した場合も、ファミリを新規作成した場合も同じです。参照面から、ファミリのフレームワーク(スケルトン)を得ることができます。一部のテンプレートには、基本的な参照面が既に含まれています。それをそのまま使用することも、変更を加えることもできます。適切な手順としては、まず参照面を操作または作成し、必要に応じて拘束したり、参照面のパラメータを設定した後にジオメトリを作成し、それを参照面にロックします。このように、参照面はジオメトリのベースとなります。ファミリ ファイルの作成方法としては、これが最も信頼性が高いベストプラクティスとなります。
参照面のフレームワークを設定し、パラメータと拘束を割り当てたら、ファミリを変更してテストします。このテストは、リボンの [ファミリ タイプ] ボタンからアクセスできる [ファミリ タイプ] ダイアログで行います。モデルの変更は、各パラメータに異なる値を入力して適用するだけです。そして期待どおりにフレームワークが動けば成功です。期待どおりに動かない場合は、元に戻して問題の解決を試みてください。以下に、例をいくつか紹介しましょう。
ジオメトリとパラメータをすべて作成、適用し、変更のテストを行ったら、そのファイルを保存し、テスト プロジェクトにロードします(以下の例では、100 Sandbox.rvt ファイルを使用しています)。必要に応じてファミリ エディタに戻り、調整して再びロードします。調整する必要がなければ、ファミリ ファイルは完成です。
拘束とパラメータ
最もシンプルなファミリは、静的なグラフィックまたは記号です。そのようなファミリは、いかなる条件でも意図した外観となるように描画されます。既定の「椅子-ブロイヤー」はその一例です。このファミリには、タイプも、ユーザーが編集できる寸法もありません。一方、ファミリをパワフルにしている特長の 1 つは、変数を使用できることです。変数を使用することで、ファミリをさまざまな条件に合わせることができます。これには、拘束とパラメータを使用します。どちらの用語にも、いくつかの意味がありますが、ここでの Revit の説明には、次のように定義するのが適切でしょう。
拘束:ファミリ ファイルの編集でのみ操作可能な固定ルールです。
パラメータ:ユーザーによる編集が可能なプロパティを持ったルールまたは関係を作成します。
どちらも基本的には、ファミリのジオメトリや動作のいずれかに適用されるルールですが、拘束はエンド ユーザーが編集できないのに対し、パラメータはエンド ユーザーが編集できます。たとえばドア ファミリを作成しているとき、ドアの幅に関わらず、端から 10 インチのところに必ず小窓が来るようにしたい場合、ファミリ エディタで拘束を使用することで、これを実現できます。一方、同じドア ファミリについて、小窓の高さと幅を変更可能(可変サイズ)にしたい場合は、パラメータを使用します。小窓の幅と高さをパラメータとし、それらを使ってファミリ内のジオメトリを操作すれば、ユーザーがコントロールできる範囲は、他の方法に比べてはるかに大きくなります。ただし、ドアに対する小窓の位置関係は固定となります。
ソリッド フォームとボイド フォームのジオメトリ タイプ
ファミリのジオメトリには、ソリッド フォームとボイド フォームがあります。ソリッド フォームは、ファミリの物理的な部分を表します。一方、ボイド フォームは、ソリッド フォームの一部を切り抜く目的で使用されます。たとえば、ソリッド フォームのボックスを作成した後、ボイド フォームを使用して、ドーナツのように穴を切り取ることができます。ソリッド フォームとボイド フォームには、どちらも 5 種類の形状があります。押し出し、ブレンド、回転、スイープ、スイープ ブレンドです(図 1 を参照)。このチュートリアルでは、押し出しとブレンドを使用します。
「押し出し」の 3D 形状は、スケッチした平面を垂直方向に押し出すことで作成します。「ブレンド」の 3D 形状も似ていますが、断面形状が 1 つではない点が異なります。上部と下部の形状があり、一方からもう一方へと高さ方向の垂直線に沿って2 つのプロファイル(境界)がブレンドされることで作成されます。「回転」の 3D 形状は、軸を中心にスケッチ形状を回転させることで作成します。完全に一周する 360 度の回転と、部分的な円弧を描く回転があります。「スイープ」の 3D 形状は、スケッチされたパスに沿って特定の形状(スケッチまたはロードされたプロファイル)をプルすることで作成します。形状はパスに対して垂直です。「スイープ ブレンド」の 3D 形状は、ブレンドとスイープの両方の機能を組み合わせたものです。ブレンドと同じく、2 つのプロファイル(スケッチ)をパスに沿ってスイープすることで作成しますが、そのパスは直線ではありません。あいにくスイープとは異なり、スイープ ブレンドのパスに含めることができるセグメントは 1 つだけです。そのため、複雑な形状を描くためには、スプライン パスが必要となります。ソリッド フォームとボイド フォームを組み合わせれば、どのような 3 D 形状でも、たいてい作成できます。
ファミリ タイプ
前述したように、ファミリには複数のタイプが含まれる場合があります。タイプとは、ファミリに含まれる一連のパラメータの値を保存して名前を付けたものです。タイプは必要に応じていくつでも追加できます。またファミリ エディタ内でプロジェクトに追加することも、後から追加することもできます。
ネストされたファミリ
前述したように、ファミリ エディタで利用できるソリッド フォームとボイド フォームを組み合わせることで、複雑な形状を作成できます。しかし、1 つのファミリで複雑な形状を管理するのは難しい場合もあります。多くの場合、必要なオブジェクトを個別のパーツに分割し、それらのパーツを別々のファミリとして作成するのが合理的です。そうしてシンプルになったファミリを、全体を表す別のファミリに挿入できます。これを「ネストされたファミリ」と呼びます。複雑なファミリは、このように扱うことでコントロールしやすくなり、柔軟性も向上します。
サブカテゴリと表示パラメータ
自分で作成したファミリも、ライブラリからロードしたファミリも、特定のカテゴリに属します。ファミリ内の各要素は、ファミリ内のサブカテゴリに属することもできます。サブカテゴリがあることで、ファミリのパーツの表示レベルが増え、グラフィカルにコントロールしやすくなります。たとえば、ソフトウェアに用意されているドア ファミリには、既定のサブカテゴリが複数あります。「平面スイング」は、そのようなサブカテゴリの一例です。このサブカテゴリを使用すると、どのファミリでもプロジェクト全体で、ドアの平面スイングを簡単に描けるようになります。これによって基準に沿って、簡単に変更を行えるようになります。
ファミリ内の要素をコントロールするもう 1 つの手段に、表示パラメータがあります。これは、ファミリのパーツを特定の状況でのみ表示したい場合に役立ちます。たとえば、金具部分をオプションの表示コンポーネントとする収納家具ファミリを作成できます。この場合、収納家具ファミリ内の金具部分の要素に表示パラメータを割り当てます。そうすると、ユーザーが特定の状況における表示の必要性に応じて、表示パラメータのオンとオフを切り替えることができます。
チュートリアル
以上で入門ガイドは終了です。チュートリアルの資料をダウンロードし、ステップバイステップの手順を試してみてください。手順に沿って説明が記載されていますが、各手順は分かりやすいように強調表示されています。このチュートリアルでは、前出のトピックで取り上げた概念の多くが紹介されています。