第3回 断面図と座標変換でモデリング

0.はじめに


第3回では、前回「図形ベースのモデリング」で描いたカーブを肉付けして、3次元のジオメトリをより細かく描いていく方法を学びます。具体的には、①断面図を描いて、②座標変換を使って配置しつなぐ、という方法です。この方法を習得すると、ディテールまでモデルを作り込んで収まりを検討するといった作業を効率的に行ったり、2D図面を使って3Dモデルを作成するといったことが可能になります。

 

1. 断面図を描く

2. 配置してつなげる

3. 演習問題

 

第3回では第2回で生成したコードを使用します。ない方は↓からダウンロードしてください。

第3回で作成する見本コードは↓です。

 

1.断面図を描く


今回モデリングするために使う資料は前回に引き続き以下の物件のものです。

 

 

今回は、この上のグリッドになっている部分をH形鋼に肉付けしていきたいと思います。

まずH形鋼ですが、JFEのカタログから寸法を持ってきます。今回は175×175、200×200、250×250の3パターンの寸法でモデリングをして、ボタンで違うパターンに切り替えてるという方式で進めていきたいと思います。

 

 

 

図を見てわかるように、寸法はB,H,t1,t2,rの5つのパラメーターで規定されており、X軸Y軸にともに線対称です。グラスホッパーで描画する量を最小限にするため、今回は赤い枠の部分をなぞるように描いた後にこれを上下左右にミラーすることで断面図を完成させたいと思います。

 

 

グラスホッパーで断面図だけを書く場合、場所はどこに描いても良いですが、今回は前回と少し変えてみてライノ上に打った点をベースに描いてみようと思います。まずライノのビューをTOPに切り替えて、適当なところに点を打ち読み込みます。

 

 

この点が中心に断面図を構成する頂点を打っていきます。基準の点を「Move」で動かしていく方法を使いますが、まず5つのパラメーターを全て入力します。こうしておくと、コードが整理されて後から見やすくなります。

 

 

このパラメータを使って基準となる点を全て打ちます。下の順番で「Move」を使って動かしていくだけです。

 

① 右(X)にt1/2 動かす

② 上(Y)にH/2-t2 動かす

③ 右(X)に(B – t1)/2 動かす

④ 上(Y)にt2 動かす

⑤ 左(-X)にB/2 動かす

 

 

 

 

この点を繋げていポリラインを作れば良いわけですが、一つの角だけRがかかっているので、まず最初の三点だけつなぎフィレットをかけます。

 

 

 

残りの点は繋いだだけでフィレットをかけず、そのまま「Join Curves」を適応します。

 

 

 

これで、ミラーするためのパーツはできました。ミラーをするコンポーネントは複数ありますが、今回は基準となる線に対して線対称にジオメトリを描く「Mirror Geometry」を使います。「Mirror Geometry」を使うためには基準線が必要ですが、今回は線がないので引く必要があります。こういった時に便利なのが「Line SDL」で、基準点とベクトルだけ入力すれば長さ1の線が引かれます。最初に読み込んだ点に対して、X方向、Y方向にそれぞれミラーします。

 

 

ここまでで断面図を描くことができました。

 

次にこれを3パターンで切り替えられるようにコードを少し組み替えます。ここで使うのが「Value List」と「Stream filter」です。「Value List」はパターンの切り替え変数をつくり、「Stream List」は切り替え変数に対して出力を切り替えます。

 

 

「Value List」は右クリック→Editから、入力の方式を設定できます。今回は175, 200, 250の3パターンです。

 

 

図のように設定すると、例えば175を選ぶと「Stream Filter」が0番のデータを流すようになります。そのため、さっきまでバラバラに繋がれていた入力のパラメータを、一度まとめて「Stream Filter」に入れてあげる必要があります。同様に、新しく200, 250のパラメータも設定します。まとめるには「Merge」を使います。

 

 

グループ化して色を分けておくと見やすいですね。色は右クリックから「Colour」で変えることができます。上の図では175を選択しているので、「Stream Filter」は0番に入っているデータツリーを出力しています。この出力したデータを「List Item」で分解し、元のコードの入力に繋げ変えます。

 

 

これで、3パターンの断面図を描画することができました。

 

 

2.配置してつなげる


次に、断面図を3次元に配置していきます。3次元の物体の配置には「Orient」を使います。「Move」では位置だけを動かしますが、「Orient」は向きも動かします。これを座標変換といいます。座標変換には3次元的に向きを規定するX,Y,Zの3つのベクトル、つまり基準平面の情報が必要です。

 

 

図のように入力は①線形変換したいオブジェクト、②元の平面、③投影先の平面となります。上の例ではXY平面からYZ平面に変換しています。

 

 

左が変換前、右が変換後です。座標変換の結果として、円錐の向きは上向きから横向きになりました。このように、オブジェクトを規定する平面ごと変換されます。

 

今回投影する先は、前回描いたドーム型のカーブになります。このカーブ群から投影先の平面を設定する必要があります。

 

 

一度に全てのカーブ(ドーム部)に座標変換することは可能ですが、まずは一本だけ肉付けしましょう。「List Item」で適当に1本取り出し「Perp Frame」に繋げると、断面を追うような平面が生成されます。断面は見えない場合があるので、試しに円を描いてみるとわかりやすいです。

 

 

この生成された平面に座標変換していきます。投影元となる平面は、今回の講習で最初に設定した点に「XY plane」を繋いでつくります。

 

 

投影してみると、断面方向は合っていましたが、平面方向が90度ずれていました。円で確認すると手軽ですが平面方向のズレには気づけないので、最終的に正しい向きになっているかは投影するオブジェクトで確かめる必要があります。今回はXとYを組み替えればよいので、一度「Deconstruct Plane」で分解した後、「Construct Plane」でXとYを入れ替えて平面を入り直します。

 

 

今度はうまくいきました。これを「Loft」でつなげれば、サーフェスを貼ることができます。加えて、「Cap Holes」をつかって両端の穴を塞ぎます。

 

 

では、これを1本だけでなく全てのカーブに適応します。「Loft」はブランチ内のカーブを全て一繋ぎにするので、ツリー構造に気をつけましょう。

 

 

ここまでで全体のモデリングの流れはできました。重要なポイントは「カーブが物体の基準となり、点がカーブの基準となる」ということです。設計変更やパターンの変更を行うときに、最後までモデリングした物体を操作するのは得策ではなく、もととなっている点やカーブの操作の段階で入力を変えたほうが良いです。

 

3.演習問題


上までのステップでモデリングしたH形鋼の構成は、交差する部分でズレて段差ができてしまっています。この段差は座標変換するときの断面図の向きを調整することでなくすことができます。これまでに組んだコードに変更を加えて段差をなくし、以下のようなモデルをつくってください。

追加で使用するコンポーネント(上のコードにこの2つを加え、繋げかえるだけです):

「Vector 2pt」:2点からベクトルを生成する

「Cross Product」: 2つのベクトルの外積をとり、新たにベクトルを生成する

 

 

 

5.今回のまとめ


第3回は、断面図を座標変換で並べて、モデルの肉付けをする方法を学びました。

 

1.断面図を描く


(1)パラメーターをまとめて最初にセットする
(2)ミラーをうまく使う
(3)「Value List」と「Stream filter」を使って複数パターンをセットする

 

2.配置してつなげる


(1)「Orient」で座標変換する
(2)「Perp Frames」で断面の平面をつくる

 

6.宿題


 

以下の断面をライノで描いて読み込み、今回使用したと同じものをゼロからモデリングしてください。

 

 

*質問・要望等がありましたら、コメント欄かSlackでお願いします。

Leave a Comment