[Grasshopper]点から線の一番近い地点に点を作成するCurve Closest Pointの使い方

[Grasshopper]点から線の一番近い地点に点を作成するCurve Closest Pointの使い方 Grasshopperコンポーネント

点から線の一番近い地点に点を作成する、Curve Closest Pointの使い方について解説します。

見え方1
見え方2

グラスホッパー上では上の2つのどちらかで表されます。


本記事では、コンポーネントはアイコン表示になっています。


点から線の一番近い地点に点を作成する

Curve Closest Pointを使うことで、点から線の一番近い地点に点を作成することができます。

点から線の一番近い地点に点を作成する

使用コンポーネント:①RectanglePopulate 2DCurve ④Curve Closest Point

今回は例として、ランダムに作成した点を、曲線の一番近い地点に点を作成していきます。

ライノセラス上の曲線

今回は、こちらのライノセラス上の曲線を使います。

四角形

最初に、RectangleのXとY端子に、1辺の長さの数値を入力します。

今回は、どちらにも1000の数値を入力しています。

すると、1000×1000の正方形の線データが作成されました。

格納

その後、Curveに、ライノセラス上の曲線を格納します。

ランダムな点

その後、Rectangleを、Populate 2DのR端子につなげます。

そして、Populate 2DのN端子に、作成したい点の個数の数値を入力します。

今回は、10を入力しています。

すると、正方形の線データの内側に、ランダムな点が10個作成されました。

曲線の一番近い地点に点が作成された

その後、Populate 2DのP端子を、Curve Closest PointのP端子につなげます。

さらに、Curveを、Curve Closest PointのC端子につなげます。

すると、上の画像のように、点から線の一番近い地点に点が作成されました。

点の移動を可視化

追加コンポーネント:①Line

点の移動を可視化してみます。

Populate 2DとCurve Closest Pointの右側のP端子を、Lineにつなげます。

点を結ぶ線

すると、点を結ぶ線が作成されました。

上の画像のように、点が移動しているのが分かります。

Curve Closest Pointから出力されるデータ

Curve Closest Pointから出力されるデータを見てみます。

Curve Closest Pointから出力されるデータ

追加コンポーネント:①Point

Curve Closest Pointの右側のP端子からは、点データが出力されます。

Curve Closest PointのD端子からは、移動前と後の点と点の間の距離の数値が出力されます。

t端子

追加コンポーネント:①ShatterList item

t端子からは、曲線上のどの位置に点があるかの情報が出力されます。

例として、その情報を使い、線を点がある位置で分割してみます。

Curveを、ShatterのC端子につなげます。

Curve Closest Pointのt端子を、Shatterのt端子につなげます。

すると、点の位置で曲線が分割されました。

今回は、9個の線に分割されています。

1つだけ選択

1つの線だけ選択してみます。

Shatterを、List ItemのL端子につなげます。

List Itemのi端子に、0の数値を入力します。

すると、分割された1番最初の線のみを取得できました。

このように、Curve Closest Pointのt端子からは、曲線上のどの位置に点があるかの情報が出力されます。

Curve Closest Pointコンポーネントを使用しているグラスホッパー記事はこちら↓

コメント

Translate »
タイトルとURLをコピーしました