Elefrontについて#4 -User AttributesをつけてBake

 さて、ここからは仮プロジェクトを想定し、実際にElefrontを用いて「User Attributes」を定義する方法を説明します。
今回使用するGrasshopperファイルは、ここからダウンロードしてください(このファイルを開くには、事前にElefrontをダウンロードしておく必要があります)。

状況から管理方法を考える

 まず、「User Attributes」を定義する前に、最終成果物を確認しましょう。
そして、その最終成果物をより効率的に作成するには「何の情報が必要か」について考える必要があります。
プロジェクトの規模や扱う部品の種類によって必要な情報が異なるので、プロジェクト毎に整理しておくと、円滑に進めることができます。

仮プロジェクトを想定

 今回は、10×10 = 計100枚のファサードパネルの四隅にファスナー(鉄骨等の下地に外装パネルを取り付ける金具)を取り付けることを想定したいと思います。
ファスナーは今回単純化して、鉄骨下地(想定)とパネル面でカットされた四角柱にします。
最終成果物は、パネルおよびファスナーの3Dデータ、ファスナーの三面図と設定します。
ファサードは曲面形状となっており、すべてのパネル形状は異なります。
また、それに伴ってファスナー形状も変わってきます。

これらのモデルを管理してくために、以下の項目について「User Attributes」を定義していきます。

  1. パネルに対して識別情報を定義する
    {x座標の値が低い順からA,B,C…J – z座標の値が低い順から0,1,2,3…9}
    例:{A-0}
  2. ファスナーに対して識別情報を定義する
    {パネルの識別情報 – ファスナーの位置情報※}
    ※(パネルを正面から見て、左下:LD (Left Down)、左上:LU (Left Up)、右上:RU (Right Up)、右下:RD (Right Down))
    例:{A-0-RU}
  3. ファスナーに対して基準面を定義する
    原点、X方向ベクトル、Y方向ベクトル
    鉄骨下地(マリオン)とファスナーの境界部分の中心位置にPlaneを設定する。
名前の定義
Planeの定義(緑の四角柱が単純化されたファスナー)

これらの定義した情報を用いることで、部品を識別したり、パネルとファスナーの関係性を構築したりします。
また、基準面を作成することで2D(XY平面)への配置を自動化することが出来ます。

「User Attributes」を定義する

 ここからは、Grasshopperを用いてパネル及びファスナーをモデリングし、モデル毎に必要な「User Attributes」をElefrontのコンポーネントを用いて定義してきます(ここではモデリングプロセスは割愛しますが、モデリングする際は、「User Attributes」を付ける順番とツリー構造が揃っていることを確認しながら進めていきましょう)。

まず、Elefrontの基本的な構成について説明します。
Elefrontは大きく分けて以下の8つの構成となっています。
それぞれの細かい説明はElefrontのホームページを参照してください。(https://www.food4rhino.com/app/elefront)

Elefrontの構成
  1. Reference
  2. Filter
  3. Attributes
  4. Annotations
  5. Block
  6. Bake
  7. Data
  8. Prams

今回の作業の流れとしては、「3.Attributes」内のコンポーネントで「User Attributes」を定義し、「6.Bake」内のコンポーネントでGrasshopperからRhinocerosのモデル空間に書き出す順序となります。

基本的には以下の3つのElefrontコンポーネントを用いて、「User Attributes」を定義していきます。

ジオメトリにUser Attributesを定義する基本セット
  • Define Layerコンポーネント(3.Attributesのサブカテゴリにあります): ジオメトリのレイヤーを定義する
  • Define Object Attributesコンポーネント(3.Attributesのサブカテゴリにあります): ジオメトリのAttribute User Textを定義する
  • Bake Objectsコンポーネント(6.Bakeのサブカテゴリにあります) : ジオメトリをBakeする

 この定義方法はパネルもファスナーも一緒です。
実際に「User Attributes」を定義した時のコンポーネントの構成はこのようになりました。

パネルのコンポーネント構成
ファスナーのコンポーネント構成

Key とValueの個数が一致しないとエラー表示となるので気を付けましょう。
この状態でBakeに接続しているBoolean Toggleを「True」にすればRhinocerosのモデル空間に出力されます。
そして、ジオメトリのプロパティ欄にある「Attribute User Text」をみると、テキスト情報が格納されていることが確認できると思います。

ここまでが、「User Attributes」を定義する内容についてでした。
次回は、Rhinocerosに書き出したジオメトリを再度Grasshopperに読み込んで、「User Attributes」の情報を用いる方法について説明したいと思います。

次の記事はこちら

yoshiki.ono

主にファサードプロジェクトを担当。 RHやGHに関する、技術的な内容について書いていきます。 O型。

シェアする

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

コメントする