前回作った鉛直の9段の座標をList itemという一つの値に対してリスト中のその行の値を抽出するコンポーネントと一つ一つの変数でそれぞれに分割していきます。
![]() |
ウッ |
それを別に外周の円を7等分した点に合わせてz座標分移動させます。
![]() |
中心軸の9つの点と円を7等分した点のz座標を一致させたょ |
こうなります。
これらの点をそれぞれ円を56等分(n*π/28)した分だけ回転させていきます。Lineを引いた後にCircle、Extrude命令は座標の指定が面倒なのでPipe命令で処理していきます。
Pipe処理する前の状態です。ねじった上でLineを引きました。
![]() |
できました。Pipeはオプションでフラットなフタをしてソリッドにしています。(ブーリアンで処理するため) |
メインの円筒とは別に63個の円柱をブーリアンでぶっこ抜かないといけないのですが、データ形式としては「9つの穴を開ける7回の命令」を「63個の穴を開ける一つの命令」にするためにmerge(複数の変数を統合)し、Flatten tree(一つの数列の流れに統合)というコンポーネントにつないでまとめます。(まとまってないと未完成の円筒が7つできたりします)この辺は行列やテンソルがわからないとしんどいポイントです…
![]() |
階層的なデータ構造が解体されてただの羅列になっています。 |
先ほどの円柱を円筒にして、さらにブール演算をさせます。画像は間違えていて、BooleanDiffernceです。
できました。やったぜ。
いろいろわかりにくいと思うので、全体の概観としてはこんな感じです。いやこれ伝わらないと思いますが、お疲れさまでした。
0 件のコメント:
コメントを投稿