今回は上画像の様な、トーラス状のオブジェクトを生成していこうと思います。基本的な内容となっておりますので是非ご参考ください。こちらはWeaverbirdというプラグインを使用しております。こちらからインストールできます。こちらの記事は動画化しております。動画の方がよい方は以下のリンクからどうぞ!
目次
概要

上画像がプログラムの全体像となっております。各ブロックごとに説明していこうと思います。
ベースとなる円の作成

- Circleコンポーネントで半径65の円を生成します。
- Perp Framesコンポーネントで円を等分割する位置に曲線に直行した平面を生成します。3の倍数だと都合がいいので、平面の数は5×3で15としています。
- Circleコンポーネントで生成した平面に半径30の円を生成します。
- Divide Curveコンポーネントで生成した円の分割点を取得します。3分割しています。
分割点を螺旋状に結ぶ曲線を生成

- 前項で生成した円の分割点の位置を回転させていきます。Rotateコンポーネントを用意します。
- Rotateコンポーネントの回転の中心点は、各円の中心点になるのでPerp Framesコンポーネントから取得します。Graftしてから接続します。
- 回転する角度のリストを作成します。今回は各円を3分割しているので、それぞれ360度÷3で120度ずつ回転させていきます。Seriesコンポーネントで120度ずつ増えていくリストを生成します。
- Rotateコンポーネントに角度のリストを接続します。Degree・Graftしてから接続します。
- Flip Matrixコンポーネントでリストとブランチを反転させます。
- Interpolateコンポーネントで回転させた分割点を結ぶ曲線を取得します。PeriodicをInvertしTrueにすることで閉じた曲線が取得できます。
生成した曲線をもとにオブジェクト生成

- 前項で生成した3本の曲線に対してPerp Framesコンポーネントで、曲線に直行する平面を取得します。今回は各曲線に対して100平面取得しています。
- Circleコンポーネントで取得した平面に円を生成します。半径20としています。
- Loftコンポーネントで生成した円同士を結ぶサーフェイスを生成します。
- Loft OptionsコンポーネントでClosedをTrueにすることでサーフェイスを閉じます。上画像の様なオブジェクトが生成できていればOKです。
生成したオブジェクトのメッシュ化

- 一番最初に生成した円の分割数を5×3で15としていましたが、3×3で9に変更します。
- Meshコンポーネントでメッシュ化します。
- Reduce Meshコンポーネントでメッシュ数を減らします。Face Countを150としています。(※こちら処理が重いのでご注意ください。Simple Meshコンポーネントを使用したかったのですが、ワークしてくれませんでしたのでやむなくこちらを採用しています・・・)
Weaverbirdで別パターン

- Weaverbird's Picture Frameコンポーネントでメッシュの中心をくりぬきますDistanceを1とし、メッシュエッジから1の距離までサーフェイスを残します。
- Weaverbird's Mesh Thickenコンポーネントで上でくりぬいたメッシュに厚みを持たせます。Distanceは3にしています。上画像の様に別パタンのオブジェクトが生成されました。
SubDで別パターン

- SubD from Meshコンポーネントをかけて別パターンのオブジェクトを生成します。有機的になりましたかね・・・・
完成

以上になります。色んなやり方があるかと思いますので、自分なりの方法で試してみてください。