線の向きを逆にする、Flip Curveコンポーネントの使い方について解説します。


グラスホッパー上では上の2つのどちらかで表されます。
線の向きを逆にする
Flip Curveを使うことで、線の向きを逆にすることができます。

今回は、こちらの線を使って解説していきます。

Flip CurveのC端子に、線データを入力することで、線の向きが逆になります。
今回は、Curveに格納された線をつなげています。

使用コンポーネント:①Curve ②Flip Curve ③Divide Curve
線の向きを確認してみます。
元々の線データと、Flip CurveにDivide Curveを使い、点で分割します。
今回はN端子に10を入力し、10個の点で分割しています。

このように、点で分割されています。

追加コンポーネント:①Point Order
まずは、元々の線の向きを見てみます。
Point Orderを使います。

すると、点の順番が分かり、線の向きが左から右であることが分かります。

今度は、Flip Curveを使った場合の線の向きを確認してみます。

すると、点の向きが右から左であり、線の向きが先程とは逆になっていることが分かります。

もっと分かりやすくするために、2つの線を用意しました。

追加コンポーネント:①Line
最初は、2つの元々の線を点で分割し、その点をLineで線で結びます。

このように、点が線で結ばれています。

今度は、1つの線にFlip Curveを使ってみました。

すると、交差するように点が線でつながりました。
1つの線の向きが逆になっているので、反対側の点同士でつながっています。

追加コンポーネント:①Ruled Surface
今度はサーフェスにして確認してみます。
最初は、Ruled Surfaceを使い、元々の2つの線データをつなげます。

すると、このように2つの線を結ぶサーフェスができます。

今度は、1つの線にFlip Curveを使ってみました。

今度は、捻じたサーフェスができました。
このように、線が逆向きになっていることが再確認できました。
逆に言うと、サーフェスが捻じれたりする場合には、元々の線の向きが逆になっている場合があるので、Flip Curveで解決できる場合があります。
Flip Curveにつなげる・出力されるデータ

Flip Curveにつなげる・出力されるデータを見てみましょう。
右側のC端子からは、向きが逆になった線データが出力されます。
F端子からは、逆向きになったかどうかの情報が出力されます。
逆向きになっている場合はTrue、なっていない場合はFalseが出力されます。
上の画像の場合は、逆向きになっているので、Falseが出力されています。

G端子に他の線を入力することで、他の線の向きに合わせて向きを決定することができます。
今回は、もう1つの線を用意して見てみます。

今回の場合、同じ線なので、元々の状態では向きが同じなので、線の向きは変わりません。
そのため、F端子からはFalseが出力されます。

Flip Curveで逆向きにした線をつなげてみます。
線の向きが逆向きになっているため、その線に合わせて向きが決定されます。
そのため、向きが逆になり、F端子からはTrueが出力されています。
Flip Curveコンポーネントを使用しているグラスホッパー記事はこちら↓
Comment