ついての様々な疑問を、ゆっくりと削ぎ落としていきます。2015年9月6日日曜日ダイナモ白熱教室(9)-サーフェイスをスライスするGeometry.BoundingBox前回まではライノのデータをダイナモにデザインスクリプトとして取り込みました。この段階でPolySurfaceという要素に変換されています。PolySurfaceとは複数のSurfaceを一つとして扱っている、ということです。AutoCADをご存じであれば、ポリラインを思い出してください。直線や円弧を一つのオブジェクトして扱えます。これと同じように複数のSurfaceを一つにしたものです。GeometryからはPolySurfaceのListが出力されるこのPolySurfaceを分割する方法はさまざまに用意されていますが、今回は形状全体を取り囲む矩形を作成し、そのX軸とY軸で分割してみます。形状全体を取り囲む立方体をBoundingBoxといいます。Rhino_BrepToDSのGeometryから出力されるのはPolySurfaceのリストなので、これをGetItemAtIndexで取り出します。ListのアイテムであるPolySurfaceを取り出す次に、取り出したPolySurfaceにGeometry.BoundingBoxをつなぎます。この時点ではメモリ上に立方体ができただけで、Dynamo上には何も現れません。このBoundingBoxをBoundingBox.ToPolySurfaceで立方体のポリサーフェスに変換します。形状を取り囲む立方体が作成された。Geometry.ExplodePolySurfaceは複数のSurfaceが固まっているので、Geometry.Explodeを使って、これを分解して6面の長方形にします。6面のうちindexが2の面を取り出したところこの6つの面のうち分割の基準として利用する一つの面を、GetItemAtIndexとIntegerSliderを使って見つけます。このとき、このとき必要のないジオメトリは、ノードを右クリックして「プレビュー」を外しておきます。プレビューを外すSurface.GetIsoLine矩形の端部の線を分割の基準線として取り出します。このためにはGetIsoLineを利用すると便利です。IsoLineはSurfaceをUVに分割した等値カーブを取り出します。対象としている平面は単純な矩形です。isoDirectionとparameterにともに0を設定すると、図のようなエッジのカーブ(直線)を取り出すことができます。(isoDirectionを試しに1にして違いを確認してみましょう。)IsoLineでエッジを抽出Curve.PlaneAtParameter抽出した線上に平面(Plane)をCurve.PlaneAtParameterを使って等間隔に作成します。このパラメータとは、カーブの全体の長さを1としますので、カーブ上の点を比率で指定することができます。今回は分割数を指定して平面を作成してみます。Numberノードを追加して0.01..0.99..#DivNumと入力し、IntegerSliderを接続します。0.01から0.99までをDivNum数で分割したパラメーターのリストが作成されます。0から1としなかったのは端部の「空振り」を避けるためです。これをPlaneAtParameterにつなぐと、線上にたくさん平面が現れます。抽出した直線上に平面が作成されるこの平面で、ライノから取り込んだPolySurfaceをカットします。Geometry.IntersectAllIntersectAllノードでは、[geometry]で[entity]を切断し、切り口のカーブを抽出します。切るもの、着られるもの、の順番でつなぎますので、今回はgeometryに先ほど作成した平面を、切られるものとしてentityにライノから取り込んだPolySurfacdをつなぎます。geometryにはPlaneAtParameterを、entityには下の図のPolySurfaceをつなぐこれをentityにつなぐこのBoundingBox→GetIsoLine→PlaneAtParameter→IntersectAllは定番なので、流れを覚えておくとよいでしょう。下の図は、BoundingBoxの面を選択するスライダを3に設定し、さらのIsoLineをもう一つ加えて等分割した状態です。どのように作成したか、もうお分かりになるでしょう。ファミリの作成を練習してみましょう。ファミリ作成はまったく難しくありません。これは一種のデザイン行為であり、ファミリ作成ができるようになると、Revitはずいぶん扱いやすくなります。ここではドアを例に建具を作る練習をします。マテリアルについてあまり実戦的なヘルプがないので、これから数回にわたって「マテリアル」について解説していきます。)のセットのことです。国土地理院は「基盤地図情報」として、全国の標高の座標データを無償で公開しています。データは10mメッシュと5mメッシュの2種類があり、10mは全国、5mもかなりの地域をカバーしています。カーテンマリオンでルーバーを作成する場合の難点は「直線形状しかできない」ということです。円弧のルーバーを作成するには手摺を使うとよいでしょう。現在のプロジェクトに設定されている壁タイプの一覧が必要になった場合、ダイナモを使えば簡単にその一覧を取得することができます。皆さんは「ライノ」とか「グラスホッパー」の名前を耳にしたことがあるでしょうか?パラメトリックデザインというジャンルも徐々に市民権を得てきていますが、Revitのプラグイン「ダイナモ」は、このコンセプトをRevitに取り入れたものです。ワークシェアリングの基本的な仕組みは前回の通りですが、ワークシェアリングの仕組みを簡単に説明します。前回の手順に従って、中央ファイルを作成し保存、ローカルファイルを開きます。ローカルファイルの要素を一つ選択します。前回に引き続き配管の接続方法を学習しましょう。排水管は勾配がついているのでこの配管に接続するのは難しそうに思いますが、これはRevitがうまく処理してくれます。Revitを使うにはどんな仕様のPCがいいのか?という疑問はRevitユーザーならば、誰しも悩むところでしょう。ダクト・配管には「システム分類」と「システムタイプ」という重要な概念があります。詳しく書いてありますので、ぜひご一読ください。Revitでいう「システム」とは「端末と端末の接続」のことを示します。