これは、Qt for Python に基づく、新しい VRED Python API v 2 のドキュメントです。VRED Python API v1 のドキュメントにはこちらからアクセスできます。
新しいインタフェースの一部の関数は、パラメータまたは戻り値の型に Qt タイプを使用します。
VRED で QColor などの Qt クラスを使用するには、まず次のように読み込む必要があります:
import PySide2.QtGui
QColor = PySide2.QtGui.QColor
QVector3D = PySide2.QtGui.QVector3D
red = QColor(255, 0, 0)
vec = QVector3D(1.0, 2.0, 3.0)
新しいインタフェースのシーン オブジェクトは vrdObject から派生します。これらのオブジェクトのクラス名は、vrd で始まります (例: ノード オブジェクトの場合は vrdNode)。
オブジェクトにはプロパティを照会および変更する関数が多数ありますが、主なエントリ ポイントとして、サービスを通じて使用するオブジェクトを取得します。
サービスを使用して、既存のシーン オブジェクトの検索、新しいオブジェクトの作成、オブジェクトの削除、関連する VRED モジュールで使用できるその他の機能へのアクセスを行うことができます。
サービス クラスと同じ名前を持つオブジェクトを通じてサービス関数を呼び出します。次に例を示します。
camNode = vrCameraService.createCamera("new camera")
API v と API v の両方の関数を同じスクリプトで使用できます。
API v1 では、ノード オブジェクトのタイプは vrNodePtr です。vrNodePtr をパラメータとして取得する API v1 の関数で vrdNode オブジェクトを使用できます。その逆も同様で、vrNode をパラメータとして取得する API v2 の関数で vrNodePtr オブジェクトを使用することもできます。これらは自動的に変換されます。
vrdNode を明示的に vrNodePtr オブジェクトに変換するには:
oldNodePtr = toNode(newVRDObject.getObjectId())
vrNodePtr を vrdNode に変換することもできます。
newVRDObject = vrNodeService.getNodeFromId(oldNodePtr.getID())
このドキュメントでのシーングラフの参照方法については、「VRED のシーングラフ」を参照してください。
VRED Python API のさまざまな機能を紹介するサンプル スクリプトのコレクションです。