関数 ¶
isScriptSolverRunning()
→ bool
Python Script Solver DOPが現在実行されているかどうか返します。
この関数は、新しいPython Solver DOPタイプを作成した時に自動的に生成されるPythonコードからコールされます。
scriptSolverData()
→ hou.DopData
現在実行されているPython Script Solver DOPに相当するScript Solverデータを返します。
Python Script Solver DOPは2つのパスで実行されます。
1回目のパスでは、そのノードパラメータを評価して、それらをソルバデータに保存します。
このパスでは、hou.dop.isScriptSolverRunningはFalse
を返し、hou.DopNode.pythonSolverDataを使用して、
書き込み可能な状態でScript Solverデータにアクセスすることができます。
2回目のパスでは、実際にオブジェクトをソルブするためにそのソルバが呼び出されます。
このパスでは、hou.dop.isScriptSolverRunningはTrue
を返し、この関数を使用することで、読み取り専用の状態でScript Solverデータにアクセスすることができます。
hou.dop.scriptSolverNewObjectsとhou.dop.scriptSolverObjectsを使用して、このパスでソルブされているオブジェクトにアクセスすることができます。
DOPノードは、ソルブされている各DOPオブジェクトに“Solver”データを取り付けます。 使用中のソルバがScript Solverのみであった場合は、このデータのタイプは“SIM_SolverScript”です。 そうでない場合は、このデータのタイプは“SIM_SolverMulti”で、“SIM_SolverScript”はマルチソルバデータのサブデータになります。 この関数によって、このデータが存在する場所に関係なく、そのデータを簡単に取得することができます。
通常では、そのソルバデータは、ソルブされているオブジェクトすべてで共有されます。 その理由から、この関数で返されるデータは読み取り専用です。 このデータを修正した場合、DOPエンジンはそれをコピーして、ソルブされているオブジェクトがこのデータを共有しなくなります。
scriptSolverNetwork()
→ hou.OpNode or None
現在実行されているScript Solver DOPを含んだDOP Networkノードを返します。Script Solverが実行されていなかった場合はNone
を返します。
Script Solver DOPからこの関数をコールします。
scriptSolverSimulation()
→ hou.DopSimulation or None
現在実行されているScript Solver DOPを含んだDOPシミュレーションを返します。Script Solverが実行されていなかった場合はNone
を返します。
Script Solver DOPからこの関数をコールします。
このメソッドはhou.dop.scriptSolverNetwork().simulation()
のショートカットです。
scriptSolverObjects()
→ tuple
of hou.DopObject
現在のScript Solver DOPでソルブされているDOPオブジェクトのタプルを返します。 Script Solverが実行されていなかった場合は、空っぽのタプルを返します。
scriptSolverNewObjects()
→ tuple
of hou.DopObject
現在のScript Solver DOPによって後でソルブされる新しく作成されたDOPオブジェクトのタプルを返します。 Script Solverが実行されていなかった場合は、空っぽのタプルを返します。
scriptSolverTimestepSize()
→ float
現在実行されているScript Solverのタイムステップサイズを返します。Script Solverが実行されていなかった場合は、0.0を返します。