ポイントの周りのXY平面内のカーブのWinding Number(回転数)を計算します。
Winding Numberは、カーブがポイントを“巻き付ける”回数を示します。
これは、内側/外側の判定に役立ち、Winding Numberはカーブの内側判定ではおよそ1、外側判定ではおよそ0になります。
開いたカーブによって半分覆われているポイントのWinding Numberはおよそ0.5になります。
そのため、これはWinding Numberが0.5以上のポイントを“内側”と定義する堅牢な方法となります。
反転したカーブの場合、内側でWinding Numberがマイナスになります。
float windingnumber2d(<geometry>geometry, vector origin)
float windingnumber2d(<geometry>geometry, vector origin, float accuracy)
ポイント‹origin›の周りのカーブ‹geometry›のWinding Number(回転数)を計算します。
float windingnumber2d(<geometry>geometry, string primgroup, vector origin)
float windingnumber2d(<geometry>geometry, string primgroup, vector origin, float accuracy)
ポイント‹origin›の周りのプリミティブグループ‹primgroup›のWinding Number(回転数)を計算します。
<geometry>
ノード(例えばWrangle SOP)のコンテキスト内で実行する時は、この引数にジオメトリの読み込み元の入力番号(0から始まります)を意味する整数を指定することができます。
別の方法として、読み込み元のジオメトリファイル(例えば、.bgeo)を示した文字列を指定することができます。
Houdini内で実行する時は、この引数にop:/path/to/sop参照を指定することができます。
primgroup
オプションで、プリミティブグループで指定されたカーブのサブセットのみに対してWinding Number(回転数)を計算します。
origin
Winding Number(回転数)の計算に使用される空間内の位置。
accuracy
Winding Number(回転数)が近似でのみ計算されます。 たいていの場合では、デフォルト値の2.0で十分で、‹accuracy›を12.0に設定すると、浮動小数点精度まで正確な結果が得られます。
Returns
XY平面内のポイントにおけるカーブのWinding Number(回転数)。
| measure |
|