Grasshopperでメッシュを編集可能なサーフェスやソリッドに変換[Cadmapper敷地修正]

メッシュをサーフェスやソリッドに変換 grasshopper

ライノセラスでメッシュを普段使用するサーフェスやソリッドで扱いたいという人は多いと思います。

特にCadmapperなどでダウンロードした敷地がメッシュで修正できないと悩む場面に直面している人もいるでしょう。

しかし、通常の方法ではメッシュはサーフェスやソリッドなどに直接変換することはできません。

そこで今回はCadmapperでダウンロードしたメッシュの敷地を例にグラスホッパーを使い、修正可能なサーフェスとソリッドを作成したいと思います。

Cadmapperはこちら

↑Cadmapperのサイトはこちらからいけます。

今回のGrasshopperとライノセラスのデータは下のリンクからダウンロードできるので是非活用してください。

今回のGrasshopperとライノセラスのデータダウンロードはこちら

全体のコンポーネントはこのようになります。

コンポーネント検索はこちら

それでは解説を始めていきます。

外周を点で分割する

外周を点で分割するコンポーネント

使用コンポーネント:① MeshMesh EdgesCurveDivide CurveCull Duplicates

点で外周を分割

まずこの上の画像のように外周を点で分割する説明をします。

meshを格納

最初にMeshに使用したいメッシュを格納します。

Mesh Edgesを使用

次にMesh Edgesを使用します。

このコンポーネントでメッシュを構成する線を抽出することができます。

外周のみ抽出

そしてE1端子からは外周のみを抽出することができます。

その線をCurveコンポーネントに格納しておきます。

点で外周を分割

そしてDivide Curveで外周を分割します。

この外周は小さな正方形の1辺が複数連続してできています。

そのため、Divide Curveで分割するとその1辺ごとに分割されます。

N端子(Count)を1にすることで辺の始点と終点のみが選択されます。

Flattenにする

この時にP端子を右クッリクしてFlattenにすることを忘れないでください。

Flattenのデータ構造

Flattenにすることで上のようなデータ構造になっていることをPanelコンポーネントで確認してください。

しかし、この場合だと終点と隣り合う辺の始点が重複しています。

なのでCull Duplicatesを使用することで重複している点を削除します。

これで外周を点で分割することができました。

点群から線を作成する

点群から線を作成するコンポーネント

使用コンポーネント:⑥ List ItemPointXZ PlanePoint ListSeriesUnit YMoveMesh|PlaneRebuild Curve

点群から線を作成

次は上の画像のようにメッシュ上に複数の線を作成します。

角の点を抽出

最初に角の点を抽出します。

Point Listを使用して角の点のインデックス番号を確認します。

今回は0ということが分かりました。

List Itemを使用し、i端子に0を入力します。

これにより角の点が抽出されます。

その点をCurveに格納します。

XZ Planeで平面を作成

次にXZ Planeで点上に平面を作成します。

平面をコピー

そしてその平面をY方向に複数コピーします。

Seriesを使用することで数列を作ることができ、連続コピーが可能になります。

N端子(Step)に移動させる距離、C端子(Count)にコピーしたい個数を入力します。

今回はN端子が10、C端子が100にしています。

Unit Yで移動方向をY軸にします。

そしてMoveをすることでコピーが完了します。

この時にコピーする平面がY方向でメッシュを最低でも超えるようにしてください。

Mesh / Planeを使用

Mesh|Planeを使用し、メッシュ上に線を作成します。

これは、先程作成した平面とメッシュが交差する部分を線として出力しています。

Rebuild Curveを使用

Rebuild Curveを使用することでより滑らかな曲線を作成します。

D端子(Degree)で曲線の次数、N端子(Count)で制御点の数を入力します。

今回はD端子は3、N端子は100としています。

N端子の数値を増やすほどより正確なモデルになりますが、データが重くなります。

点群から線を作成

これによりメッシュ上に線を作成することができました。

複数の線からサーフェスとソリッドを作成する

使用コンポーネント:⑮ LoftUnit ZNegativeExtrude

Loftを使用

最後に先程作成した線からサーフェスとソリッドを作成します。

Loftを使うことで複数の線からサーフェスを作ることができます。

作成されたサーフェス

サーフェスだけで十分という人はこれで完成です。

作成されたソリッド

ソリッドを作成したい人はサーフェスをExtrudeを使用して厚みを付けます。

Unit ZでZ軸を指定し、Negativeにすることで数値をマイナスにします。

これで下方向に厚みを作ることができました。

これで修正可能なサーフェスとソリッドの完成です。

まとめ

メッシュをサーフェスやソリッドに変換

この方法を適応、応用することで様々なメッシュを修正可能なモデルを作ることができます。

Cadmapperを中心とした敷地、モデルのダウンロードデータはメッシュになっている場合が多いので是非この方法を使用してください。

今回は以上になります。

コメント

タイトルとURLをコピーしました