Rhino Inside Revit in 2025, RevitでGrasshopperを走らすPart 2

Rhino Inside Revit アップデート

Rhino8にアップデートしてから、Rhino.Inside.Revitをインストールしておらず、久しく使ってなかった。先日Rhino.Inside.Revitをセットアップしたところ、だいぶ様変わりしていた【01】。使い方を思い出そうと、「RevitでGrasshopperを走らす」と題したずいぶん前のブログ(2021年3月)を引っ張りだしたのだが、コンポーネントも変わっていて悪戦苦闘した。とりあえず目的は達成したので、せっかくなのでその成果を共有したいしたいと思う。筆者のワークステーションの性能も格段に上がったので題名通りRevitでGrasshopperを走らせよう!
【01】最新バージョンのリボン

Geodesic Domeジオデザイックドームの作成

ジオデザイックドームを作る方法はいろいろあるのだが、今回は、Grasshopper (GH) の2つのプラグイン ① RhinoPolyhedra と ② Weaverbird を使った方法を紹介。Rhino8からは、Food4Rhinoのサイトを介さず、RhinoからPackageManagerで直接インストールできるようになっている。PackageManagerで見つからないプラグインはいつも通り、Food4Rhinoなどからインストールしてください。

① RhinoPolyhedra
ジオデザイックドームを生成するツールがネイティブのMeshツールの中にインストールされる。また親のRhinoの中にもジオデザイックドームを作成するモデリングツールがインストールされる。
【02】RhinoPolyhedra、GHのMeshにネスト

②Weaverbird (Wb)
ポリゴンメッシュでのパネリングなどの加工が得意なプラグイン。メッシュから窓パネル(Mesh Window)や窓枠(Mesh Frame)をつくるコンポーネントが便利。
【03】Weaverbird (Wb)

Polyhedra / Icospher ジオデザイック多面体のコンポーネント

それでは準備が出来たので、ジオデザイックドームのモデリング。
Mesh / Polyhedra / Icospher
でジオデザイックドームを一発で作成【04】。Scaleは半径を示す。Densityは分割数。ここでは3に設定。Density は上げ過ぎると動かなくなるので注意。0の場合は正20面体【05】。

【04】ジオデザイックドーム Scale = 3000  Density = 3

【05】Density = 0 では正20面体

半球ドームにしたいので、XY平面で上下でスプリットする【06】。
Mesh /Utility /Mesh Split Plane
【06】Mesh Split Plane

Weaverbird ガラスパネル&枠の作成

【06】は単なるメッシュのドーム。ここから窓ガラス(パネル)をつくるのは、
Weaverbird / Transform / Weaverbird’s Mesh Window
窓枠(マリオン)をつくるのは、
Weaverbird / Transform / Weaverbird’s Picrure Frame
先のドームのメッシュデータからワイヤをつなげるとインスタントに生成【07】。
【07】Weaverbird’s Mesh Window & Picrure Frame

この窓枠は平面なので見込み60を与える【08】。
Weaverbird / Transform / Weaverbird’s Mesh Thicken
【08】Weaverbird’s Mesh Thicken

ガラスは枠(マリオン)見込みの中央に配置したいので、見込60を2等分した30移動(オフセット)する【09】。
Weaverbird / Transform / Weaverbird’s Offset Mesh
※パネルが一枚だけうまくオフセットされないので、いったんMeshツールのDisjoint Meshを介して移動している

【09】ガラスをマリオンの中央に移動、Weaverbird’s Offset Mesh

最後にガラスに厚み10を与える【10】。
Weaverbird / Transform / Weaverbird’s Mesh Thicken
【10】ガラスをに厚みを与える

これをGHのコンポーネントを選択して、RevitでBakeするとプロジェクトの中にドームが読み込まれる【11】。
【11】RevitでBakeして読み込まれたが…

これで完成と行きたいところだが、この状態だとRevit上でマテリアルがアサインできないことに気づく。それを解決する一つの方法は、RevitでBakeする前に、Rhino上でBakeしてそのRhinoモデルにガラスと窓枠のマテリアルをアサインし、その3DMモデルをRevitにインポートするやり方がある。しかし、どうせならGHでマテリアルをアサインしてRevitに取り込みたい。ここからがクライマックス。

Add DirectShape

とりあえず、とにもかくにも、GHでつくったジオメトリーをRevitに読み込みたい時は、RevitリボンのAdd DirectShape (Geometry)【12】。
【12】 Revit / DirectShape / Add DirectShape (Geometry)

たとえばRevitのLoftでつくったフォームなど、とりあえずなんでもRevitに取り込める【13】。
【13】 Loftで作成したサーフェスをGeometoryとして即席インポート

このDirect ShapeにはMaterialの入力端子があるので、ここにパラメーターを入力できるはず。

Add Material

【14】 Add Material

まずAdd Materialでマテリアルの名前を定義しておく。次にColour RGB でマテリアルに色を与え、最終的にRevitのマテリアルアセットに持って行くために、以下のようにMaterial GraphicsReplace Material’s Assetとつなぐ【15】。
【15】色の設定、その他マテリアルパラメーターの設定

最後に先のDirect ShapeのMaterial端子につなげる【16】。

【16】DirectShapeのMaterial端子に接続

すると、マテリアルがRevit内でアサインされた【17】!

【17】GHで定義したマリオンの黄色とガラスの水色が無事に読み込まれる

Revitのマテリアルブラウザを確認すると、GH上で定義した枠とガラスのマテリアル『*Aluminum』と『*Glass』がちゃんと読み込まれていることが分かる【18】。

【18】Revitのマテリアルブラウザ

ここまでできれば、Lumionでもマテリアルをアサインできる【19】。
【19】RevitからLumionにインポートしてマテリアルをアサイン

Adaptive Panel

これで終わりにはできない。先ほどのブログのようにパネルはRevitのファミリー、前回ブログで作成した『Adaptive三角パネル』を割り付けたいところ。意外にシンプルな以下の手順。Adaptiveコンポーネントは、Meshは認識しないので、まずMeshの境界を抽出する。
Mesh / Analysis / Face Boundaries
を使うのがポイント。これはBrepとしてまとまっているので、Deconstruct Brep で分解し、それぞれの三角Brepのエッジを抽出し、
Revit / Component / Add Component (Adaptive)
につなげるとRevitにうまく読み込まれる【20】。

それと、肝心なことをすっかり忘れていだが、Revitのアダプティブコンポーネントを取り込むために、Built-in Categoriesでファミリーのカテゴリー (✓Cutain Panels)を、 Element Type Picker でコンポーネント(✓アダプティブパネル_三角)を指定している。 (この辺のコンポーネントが前回と違う。)
【20】Add Component (Adaptive)

うまく割り付けられてない大きなパネルが2枚があるが、ピン固定を解除しDeleteすると【21】、
【21】うまく割付られないパネル(地面リングの微小なフラグメント)をDelete

無事に Adaptive Panelの割付が完了。とくにおおきく欠損しているところは無いようだ。Adaptive Panelには枠とガラスのマテリアルをアサインしているのでRevitでレンダリングすると以下のようなレンダリング結果となる【22】。
【22】Adaptive三角パネルの割付

結果オーライとして、この辺で打ち止めとしましょう。

250908  HN

変幻自在(?)に階段の手摺をデザインする, Revitのアダプティブコンポーネント

悩ましい階段の手摺

Revitのモデリングで厄介なのは手摺である。とくに階段の手摺、さらに手摺子がガラスパネルなどになったりするとより悩ましい。まず下の階段の手摺の例でその「悩ましさ」を見てみよう。これは一般的な横桟の手摺(建築テンプレートの「900mm パイプ」)である<図01>。この横桟をブラケット付きのガラスパネルに交換する。


<図01>横桟の手摺「900mm パイプ」

ガラスパネルの手摺子はRevitのライブラリーにインストールされている。アメリカ人のRevit用語は不思議な日本語なので見つけるのが大変である。このファミリ「手摺子パネル – ブラケット付ガラス.rfa」をプロジェクトにロードしておく。

C:/ProgramData/Autodesk/RVT 20xx/Libraries/Japan/手摺横桟/手摺子/手摺子パネル – ブラケット付ガラス.rfa

つぎにパネルを割り付ける。横桟手摺(「900mm パイプ」)を複製し、「ガラスパネルブラケット付」などと名前を変える。次にちょっとややこしい手摺子の設定<図02>。


<図02>「手摺子構成」設定画面

「主パターン」設定の「手摺子ファミリ」を「手摺子パネル -ブラケット付ガラス:600±25mm」、「手摺子– 丸型:20mm」、「直前部材からの距離」をそれぞれ「310」にする。600はパネル幅。パネルも幅のある手摺子(Baluster)という考え方である。配置間隔はパネル幅が600なのでその半分の300。手摺子の径が20Φなのでスパンは半径分を足して「310」とする。「直前部材からの距離」がスパンの半分となることは、図示すると理解できる<図03a>。

<図03a>直前部材からの距離

始端と終端とコーナーの手摺子は「手摺子– 丸型:20mm」に変えておく。手摺横桟は「手摺横桟構成」の設定画面ですべて削除する。手摺横桟を全て削除しても一番上の手摺(笠木)は残る。手摺(Handrail)は一番上の手掛け部分(Top Rail)のことで「笠木」と訳されている。少々分かり難いので<図03b>でRevitの手摺の構成要素と用語を整理しておく。

<図03b>Revit手摺の構成要素と用語

この設定で、アウトプットは<図04>のようになる。端部にパネルが割り付けられずにギャップができている。横桟の場合は手摺子まで自動的に延長されるが、600の決まった幅パネルなので余りの部分は割り当てられない。


<図04>端部にギャップができる

とりあえずこのギャップを埋めるにはもう一度「手摺子構成」の「位置合わせ」で「フィットするように拡げる」にする<図05>。


<図05>「手摺子構成」「位置合わせ」「フィットするように拡げる」

これで一応ギャップは埋められるのだが、よく見るとブラケットが重なったりしており破綻している<図06>。残念ながらパネル幅は自由に追従しない。


<図06>割り付けがうまくいかない

この方法でガラスパネルをきれいに割り付けるためには、スパンごとにタイプを作成する必要がある。階段部分だけでなく踊り場部分など様々なコンディションがある。例えば階段部分のスパンが2100の場合、3分割し700のパネルを作るのだが、正確には手摺子の直径分のスパンを差分した「手摺子パネル – ブラケット付ガラス:680」を作る。このようにコツコツとパネルと手摺タイプのバリエーションを作っていけば、破綻しないように手摺子パネルと手摺子支柱を割り付けることができるのだが、ここまで説明するとすでにお分かりのように、さまざまな幅Wの「手摺子パネル – ブラケット付ガラス:W」を作成しなくてはならない。スパンが2700と2697の3mm違いでもメンバーが変わる。階段の手摺ではそういう微妙な違いが多々生じてしまう。例えば上のL型階段の場合、以下のコンディションごとに異なる寸法が発生する。

■1階から踊り場までの階段部:(a)外側手摺 (b)内側手摺
■踊り場:(c)外側の手摺 (d)内側の手摺(接合部)
■踊り場から2階までの階段部:(e)外側手摺 (f) 内側の手摺

といった具合である。うまく計画すれば(a)と(b)、(e)と(f)は同じものにでき、(d)は無くすことができるが、実際の設計の現場ではそうは問屋が卸さない。とくに日本の一般的な住宅のようにスペース限られている場合はなおさらである。

もっとスマートな解決策は無いか? 1つのファミリタイプだけですべて作成できないか? その為にはパネル幅が様々なスパンに自由に追従する変幻自在な手摺子パネルを作成する必要がある。そう「アダプティブコンポーネント」の出番である!

変幻自在? アダプティブな手摺

アダプティブ標準手摺ファミリーの作成

それでは寸法が様々なスパンに追従する手摺子ファミリ、アダプティブコンポーネントを作成してみよう。テンプレートは「一般モデル(メートル単位)、アダプティブ.rft」を使う。ここで作成するのは、以下の2種類の手摺子。<図07>が基本ユニットの「アダプティブ標準手摺」で、青い2点が「配置ポイント1」「配置ポイント2」である。水平面でも斜面にも自由に追従可能なアダプティブな配置点である。端部の「配置ポイント2」が開いているが、「アダプティブ標準手摺」を連続して繰り返し配置し、閉じるときは<図08>の手摺子支柱「アダプティブ端部手摺」を配置し終点とする。


<図07>「アダプティブ標準手摺」親ファミリ


<図08>「アダプティブ端部手摺」親ファミリ

「アダプティブ標準手摺」の中で、「配置点1」上に手摺子(支柱)のフォームだけを直接作成し、トップレールの「手摺(笠木)<図09>」と「ガラスパネル<図10>」の子ファミリはネスト/ロードさせている。子ファミリのガラスパネルには、さらに孫ファミリの「ブラケット」が入っている<図11>。


<図09>「手摺(笠木)」子ファミリ


<図10>「ガラスパネル」子ファミリ


<図11>「ブラケット」孫ファミリ

もちろん、手摺の高さ、手摺笠木の径、手摺子支柱の径、パネルと上下左右のギャップ、ガラスの厚さ、ブラケットのサイズ、各要素のマテリアルはすべてパラメ化し、ロードしたプロジェクトの中ですべて調整できるようにする。当初は「標準手摺」の中で手摺笠木からガラスパネルまですべて作成しようと試みたが、子ファミリとして分岐させて親にとり込んだ方が作成しやすく、またパラメーターも整理されコントロールしやすい。親子孫の相関は<図12>。※手摺子支柱は親の中で作成しているが、手摺(笠木)と同様に子供として取り込んでも良い。

★親「アダプティブ標準手摺」
☆子「手摺(笠木)」
☆子「ガラスパネル」
☆☆孫「ブラケット」
★親「アダプティブ端部手摺」

<図12>親子孫の相関

手摺の配置点の作成

ここからはこのアダプティブ手摺の設置である。アダプティブ手摺を配置するには、<図13>のように階段上に参照線と配置点をつくる。この作図は「インプレイスマス」の中で行う。現場打ちコンクリートのことをCast-In-Place Concreteと言うが、インプレイスとは工場での規格品の大量生産ではなく、現場に応じた工事というニュアンスである。


<図13>手摺の配置点の作図

効率良く行うには手摺の配置面に参照面を作成し、参照面には「階段1外」「階段1内」「階段2外」「階段2内」などと名前を付けておき、断面図で参照面(作図面)を選択できるようにしておく<図14>。


<図14>作図準備(参照面の作成)

例えば断面図1の外側の手摺の配置点の作図では、まず作業面となる「階段1外」の参照面を有効にし、<図15>のように参照線を作成し「パスを分割」で等分割してアダプティブポイントを生成する。


<図15>参照線の作図と「パスの分割」

ここでは3等分すると踏面に支柱がうまくのっかる。3等分の場合は、配置点は植木算で両端を含み4点となる<図16>。分割数は変更可能である。パスを分割する必要の無い場合、つまり両端だけの配置点の場合は2点となる。


<図16>3等分の場合配置点は両端を含み「4」

これを踊り場と2階まで作成する。この参照線と分割点はインプレイスマスの中で作成する。これで準備が完了である<図13>。ここでは外側手摺だけでご容赦を。

※パスの分割は均等に分割することしかできない。均等分割でうまく割り付けられないときは1本の連続した参照線を2本や3本に分けて作図するか、パスの分割ではなく参照線の上に点を配置する方法もある。参照線の上には制御点が自由に配置でき、その制御点にアダプティブ手摺を配置することができる。

アダプティブ手摺の設置

最後にこの配置点に配置するには、プロジェクトにロードした「アダプティブ標準手摺」をプロジェクトブラウザからグーっと3Dビューにドラックすると出てくるので、最初の点と次の点にクリックしていくと設置できる<図17>。斜めでも水平でも設置可能な点が、アダプティブファミリーの優れた所である。アダプティブファミリーのカテゴリーは初期設定では「一般」なのでロードするときにタイプを「手摺」とする。カテゴリーを「手摺」にしておかないと、手摺ファミリーのブラウザのリストに出てこないので注意。(その場合「一般」の中に隠れている。)


<図17>ファミリブラウザからドラッグしてくる

これを一つ一つ配置しても良いのだが、インプレイスマスの中では繰り返しコピーといコマンドがあるので便利<図18>。残りの配置点に自動的に配置してくれる。


<図18>繰り返しコピー

この作業を踊り場、踊り場から2階までを行い、最後の端部は「アダプティブ端部手摺」で終了させる<図19>。


<図19>手摺終端「アダプティブ端部手摺」

完成は<図20>となる。パスの作図は少々面倒だが、階段のデザインなのでこのくらいの労力は最低限である。


<図20>L型階段の踏面に配置したアダプティブ手摺

注意したいのはアダプティブ手摺をインプレイスマスの中で配置すると、マスが非表示になっていると手摺を選択してもロックされた状態となり、タイププロパティのパラメーターを調整できないこと。マスを表示させて参照線と分割点と手摺の入ったインプレイスを選択し「インプレイスの編集」でインプレイスの中に入ると、せっかく設定した手摺の高さなどのパラメーターを調整することができる<図21>。


<図21>手摺はインプレイスマスの中に入っている

インプレイスマスの中に手摺を配置したが、配置点だけインプレイスの中で作成し、手摺はインプレイスの中に配置せずに直接プロジェクト上に設置することも可能。この場合繰り返しコピーが使えないだけで、このくらいの数の手摺パネルであればインプレイスの中に入れて作業する必要性は特にありませんね。

210410 HN