このクラスは、2次元グリッドの文字列だけでなく、ツリーの各ブランチにいくつもの名前付きサブツリーを持たせることができるツリー構造を表現します。 このグリッドの項目列は2つ(“Property”と“Value”)であることが多いです。各行は、任意のキー/値の組を表現します。 とはいえ、このグリッドにはもっと複雑なデータ(例えば、ジオメトリデータ内のボリューム情報)を含めることができます。
メソッド ¶
name()
→ str
ツリーのこのブランチの名前を返します。
infoType()
→ str
このツリー内に格納されているデータのタイプの記述に使用することができる文字列を返します。
例えば、(SOPノードまたはDOPノードで生成される)ジオメトリ情報を保持したツリーは、このメソッドから"Geometry"
を返します。
branchOrder()
→ tuple
of str
branches()
で返される辞書内の子ブランチを“そのままの”順番で返します。
この順番はあまり重要ではないことが多いですが、なにかしらそのままの順番でなければならない膨大なブランチ(例えば、DOPノードによって返される各DOPオブジェクトのブランチ)が存在する場合には、
このメソッドは、その情報を整理するのに役立ちます。
このコードは、デフォルトの球とトラースのオブジェクトから作成されたRBDシミュレーションを想定して、そのままの順番でノードの情報ツリーの子ブランチすべてを反復します:
>>> nodeinfo = hou.node('/obj/AutoDopNetwork/output').infoTree() >>> dopinfo = nodeinfo.branches()['DOP Info'] >>> objinfo = dopinfo.branches()['Objects'] >>> objbranches = objinfo.branches() >>> for objname in objinfo.branchOrder(): ... obj = objbranches[objname] ... print objname, ':', obj.branches() ... torus_object1 : {'Geometry': <hou.NodeInfoTree>} sphere_object1 : {'Geometry': <hou.NodeInfoTree>}
branches()
→ dict
of str
to hou.NodeInfoTree
すべての子ブランチの辞書を返します。 各ブランチには名前があり、自身のブランチなどが含まれた完全ツリーです。
headings()
→ tuple
of str
rows()
メソッドで返されるデータの項目列のタイトルを返します。
通常では、これは単に('Property', 'Value')
で、その行は単にキー/値の組です。
しかし、場合によっては、そのヘッダは、その返される情報を解釈するのに役立ちます。
rows()
→ tuple
of tuple
of str
2次元グリッドの文字列を返します。返されるタプルは、グリッドの行を表現します。
そこに含まれるタプルがそれぞれ一行を表現します。そこに含まれているすべてのタプルは同じ長さで、それはheadings()
メソッドで返されるタプルの長さです。