アトリビュートのクラスが事前に分かっていれば、detailattribsize, primattribsize, pointattribsize, vertexattribsizeを使用した方が高速です。
int attribsize(<geometry>geometry, string attribclass, string attribute_name)
<geometry>
ノード(例えばWrangle SOP)のコンテキスト内で実行する時は、この引数にジオメトリの読み込み元の入力番号(0から始まります)を意味する整数を指定することができます。
別の方法として、読み込み元のジオメトリファイル(例えば、.bgeo
)を示した文字列を指定することができます。
Houdini内で実行する時は、この引数にop:/path/to/sop
参照を指定することができます。
attribclass
detail
(またはglobal
), point
, prim
, vertex
のどれか。
primgroup
, pointgroup
, vertexgroup
を使用することで、グループから読み込むこともできます。
Returns
アトリビュートの タイプ のサイズ。
-
ベクトルタイプに関しては、これはコンポーネントの数です。
-
整数,浮動小数点,文字列に関しては、これは
1
を返します。 -
配列アトリビュートに関しては、これは、配列内のタプルのサイズを返します。このタプルサイズは、Attribute Createノードの Size パラメータで制御します。
アトリビュートが存在しなければ、0
を返します。
-
この関数は、アトリビュートの タイプ を扱います。アトリビュートの 値 のサイズを返しません。この関数を使って、文字列や配列値の長さを取得することはできません。
Examples ¶
// "defgeo.bgeo"のポジションアトリビュートのサイズを取得します。 int size = attribsize("defgeo.bgeo", "point", "P");
See also | |
attrib |
|