概要
OP Find DATは、あるコンポーネントから、そのコンポーネント内のすべてのノードを検索し、ユーザが選択した基準にマッチするノードごとに1行のテーブルを出力します。例えば、すべてのRamp TOP、名前が “wave “で始まるすべてのノード、Cloneパラメータが “master1 “に設定されているすべてのノード、”emitter “と呼ばれるタグが付いているすべてのジオメトリコンポーネントなどです。
基準は、特定のファミリのノードのみ、または特定の演算子タイプのノードのみを含むように制限することができます。パス、特定の値(定数と式の両方)を含む特定のパラメータ、コメント、タグ、特定の文字列を含むDATの内容にマッチするかどうかをフィルタリングすることができます。
また、指定されたコンポーネントから階層のある程度の深さまでしか見ないようにすることもできます。(例えば、2レベル下や無制限など)
大文字小文字を区別することも、区別しないこともできますが、大文字小文字を区別するOnまたはOffは、OP Find DATのすべての基準に適用されます。
さらに、添付のコールバックDATに含まれるコールバックでTrue of Falseを返すことにより、より特殊な基準を使用して一部のノードを除外できます。
Combine Filters Menuメニュー(AnyまたはAll、デフォルトはAll)を使用すると、パターンマッチングの基準に対して or または and を実行できます。
また、オペレータのリスト(例えば、別のOP Find DAT)を含むオプションのDATを取り、これを使ってフィルタを連鎖させることもできます。
出力のカラム
出力にはname、id、paths、type、tagなど様々なカラムがあります。(idはオペレータのメンバーで、ノードに固有の整数で、TouchDesignerプロセスの実行中には変化しません)。
また、コールバックDATでカラム名を定義し、コールバックDATの別の関数を介してカラムセルを埋めることで、カスタムカラムを出力することもできます。例えば、ノードの tx パラメータの値をカスタムカラムとして出力することができます。
OP FindDATがいつcookするかを制御できます。通常、指定された階層内のノードのいずれかが変更されるたびにcookします。 Active Cookメニューパラメータを使用して、フレームごとに強制的にcookしたり、完全にオフにしたりすることもできます。
Active CookのPulseパラメーターをクリックして、一度強制的にcookするか、node.cookpulse.pulse()python コールを使用して同等の操作を行うこともできます。
OP Find DATは、開始すべきコンポーネントへのパスを与える代わりに、あらかじめ生成されたノードへのパスのリストを含む入力DATを受け取り、各入力行の結果を出力にマージすることができます。これを使用するには、入力DATの最初のカラムにノード “id “が含まれている必要があります。これは、「ID」という列がオンになっている別のOP Find DATで生成できます。
例えば、最初にパネルであるすべてのコンポーネントをリストアップし、次にタイプやCloneパラメータに基づいてグループに分けるとします。最初のOP Find DATでは、巨大な階層を少数のノードに事前にフィルタリングし、その後のOP Find DATでは、よりシンプルなセットで動作するため、チェックやcookの手間が省けます。
Operator SnippetsのサンプルやScript DATの章も参照してください。
パラメータ – Component ページ
Active Cook / activecook
DATをcookするのを有効にします。
Cook Pulse / cookpulse
OP Find DATを手動で強制的に更新します。
Component / component
検索を開始するコンポーネントのパスを設定します。
Minimum Depth / mindepth
OP Find DATが再帰的に検索するサブコンポーネントの最小深度を設定します。
Limit Max Depth / limitmaxdepth
Maximum Depthパラメータをオンにして、サブコンポーネントの検索を制限します。 このトグルをオフにすると、すべてのサブネットワークが検索されます。
Maximum Depth / maxdepth
OP Find DATが再帰的に検索するサブコンポーネントの最大深度を設定します。
パラメータ – Families ページ
このパラメータ ページでは、どのオペレータ ファミリーが検索に含まれるか設定します。
Object COMPs / objects
GeoCOMPのようなオブジェクトCOMPを検索に含めます。
Panel COMPs / panels
Container COMPのようなパネルCOMPを検索に含めます。
Other COMPs / other
Base COMPのようなその他のタイプのCOMPを検索に含めます。
TOPs / tops
TOPオペレータを検索に含めます。
CHOPs / chops
CHOPオペレータを検索に含めます。
SOPs / sops
SOPオペレータを検索に含めます。
MATs / mats
MATオペレータを検索に含めます。
DATs / dats
DATオペレータを検索に含めます。
パラメータ – Filters ページ
Case Sensitive / casesensitive
以下のパターンマッチングで、大文字と小文字の区別します。
Combine Filters / combinefilters
以下のフィルタの All または Any を組み合わせて、一致するフィルタを取得します。
- All / all
検索結果に含まれるパラメータには、すべてのフィルタが一致している必要があります。(AND)
- Any / any
検索結果に含まれるパラメータには、フィルタ条件のいずれかを満たす必要があります。(OR)
Name / namefilter
wave1、wave2 などのオペレータ名を使用します。
Type / typefilter
waveCHOP や panelexecuteDAT のような名前を使用します。 Type列を見て、構文を確認してください。
Path / pathfilter
オペレーターが配置されているパスを指定します。
Parent Path (relative) / parentfilter
オペレータが配置されている相対的な親パスを指定します。これは、この DAT の parent Path カラムのフィルタ・オプションで、Colums ページの Parent Path パラメーターをトグルすることで有効にすることができます。
Exclude Path (relative) / excludefilter
検索対象から除外する相対パスを指定します。
Comment / commentfilter
ここで設定したコメント文字列を含むオペレータにのみマッチします。
Tags / tagsfilter
ここで指定したタグに一致するオペレータのみにマッチします。複数のタグはスペースで区切ったリストとして検索することができます。
DAT Text / textfilter
指定された文字列にマッチするDATオペレータのみをコンテンツに含めます。
Par Name / parnamefilter
指定されたパラメータ名を持つオペレータにのみマッチします。
Par Value / parvaluefilter
指定されたパラメータ値に一致するオペレータのみマッチます。
Par Expression / parexpressionfilter
指定されたパラメータ式の文字列にマッチするオペレータのみが含まれます。
Par Non-Default Only / parnondefaultonly
デフォルト値以外のパラメータにのみマッチします。
パラメータ – Columns ページ
ID / idcol
このプロセスでノードを一意に定義する整数。 プロセスの期間中は同じ番号ですが、プロセスを再度実行すると異なる場合があります。
Name / namecol
結果のテーブルにオペレータの名前を含めます。
Type / typecol
結果のテーブルにオペレータの種類を含めます。例えば rampTOP のようになります。
Path / pathcol
結果のテーブルにオペレータのパスを含めます。
Relative Path / relpathcol
検索ルートからの相対的なオペレータのパスを結果のテーブルに含めます。
Parent Path / parentpath
親のパスを含めます。
Depth / depthcol
見つかったオペレータのルートパスに対する相対的な深さを示す列を含めます。
Cook Times / cooktimescol
見つかったオペレータのクックタイムを含めます。
Tags / tagscol
オペレータのタグを含めます。
パラメータ – Callbacks ページ
Callbacks DAT / callbacks
受信した各イベントのコールバックを含む DAT のパス。使用法については opfindDAT_Class を参照してください。
Convert Bool to Int / convertbool
ブーリアンロジック値の場合、値は’1’または’0’になります。このパラメータが Off の場合は、 True または False となります。
Convert None to Empty / convertnone
None の値の場合、値はEmptyに変換されます。
パラメータ – Common ページ
参照:共通 Common ページ