Houdini 20.0 PDG/TOPsを使ってタスクを実行する方法

ファイルタグ

ワークアイテムは、そのワークによって生成された“結果”を追跡します。各結果には、そのタイプのタグが付きます。

On this page

概要

ワークアイテムは、outputアトリビュートの項目から生成された結果を追跡します。 その結果は文字列、通常ではワークアイテムが生成したファイルのファイルパスです。 すべての結果には、その結果のタイプを示した“タグ”文字列が付きます。このタグ文字列は、幅広いタイプから特定のタイプまでの階層をスラッシュで区切った文字列です(MIMEタイプと同様ですが、完全に自由形式になっています)。例:

タグ

説明

file/geo

ジオメトリファイル

file/geo/terrain

地形ジオメトリファイル

file/geo/building

ビルを含んだジオメトリファイル

一部のノードとAPI関数は、このタグによってファイルのマッチングを行なうことができます。 タグのマッチングに接頭辞を使用すると、file/geo/terrainのタグが付いたファイルは、file/geofileの両方の接頭辞にマッチしますが、file/geo/buildingの接頭辞にはマッチしません。

一般的にはワークアイテムはファイルを出力しますが、他のタイプの情報を結果としてレポートさせることも可能です。 例えば、ROP Fetchを使って分散シミュレーションをクックすると、そのシミュレーショントラッカーのワークアイテムはsocket/ipsocket/portの結果をレポートします。 他のワークアイテムは、その結果を使用することで、そのシミュレーショントラッカーに接続することができます。

結果にタグを付ける方法

  • 通常では、ファイルを生成するノードには、ワークアイテムの結果にタグを付ける方法を指定するためのパラメータがあります。デフォルトのタグは、通常ではそのノードの意図した用途に基づいて設定されています。

    例えば、Geometry Importノードは、SOPネットワークをクックして、その結果をディスク上のジオメトリファイルに書き出すことができます。 このノードには、生成されたファイルにタグを設定するための Result Tag パラメータがあります。 デフォルトのタグはfile/geoです。

タグを使用する方法

  • ワークアイテムのInfoウィンドウやTask Graph Tableウィンドウでは、結果に割り当てられたタグを確認することができます。

  • タグは、ワークアイテムに複数のファイルを関連付ける時に役立ちます。

    例えば、Partition by Boundsノードは、地形タイル、そのタイルに交差した道路ジオメトリからパーティションを作成することができます。 このパーティションには最終的に複数のファイル(地形ファイル、0個以上の道路ファイル)が関連付けられます。 地形ファイルにfile/geo/terrainタグ、道路ファイルにfile/geo/roadタグを付ければ、それらのファイルが扱いやすくなります。

  • PythonスクリプトAPIを使えば、タグによって結果を照会することができます。pdg.input()関数のtagパラメータに接頭辞を指定することで、その接頭辞でタグがマッチした結果のみを返すことができます。

    # 入力のワークアイテムからfile/imageというタグが付いた入力ファイルすべてが返されます。
    pdg.input(tag='file/image')
    

PDG/TOPsを使ってタスクを実行する方法

基本

初心者向けチュートリアル

次のステップ

リファレンス

  • すべてのTOPsノード

    TOPノードは、データをネットワークに送り込んでワークアイテムに変換し、色々なノードでそれを制御するワークフローを定義します。たいていのノードは、ローカルマシンまたはサーバーファーム上で実行可能な外部プロセスを表現しています。

  • プロセッサ系ノードコールバック

    プロセッサ系ノードはスケジューラで実行可能なワークアイテムを生成します。

  • パーティショナー系ノードコールバック

    パーティショナー系ノードは複数の上流ワークアイテムを単一パーティションにグループ化します。

  • スケジューラ系ノードコールバック

    スケジューラ系ノードはワークアイテムを実行します。

  • 独自のファイルタグとハンドラー

    PDGはファイルタグを使用して出力ファイルのタイプを決めます。

  • Python API

    ディペンデンシーグラフを扱うためのPython PDGパッケージのクラスと関数。

  • Job API

    ジョブスクリプトで使用するPython API

  • ユーティリティAPI

    Python pdgutilsパッケージのクラスと関数は、PDGノードでの使用だけでなく、スクリプトやプロセス外のジョブスクリプトでの使用も想定されています。