vrdPhysicsInfo

クラス vrdPhysicsInfo

(vrdData を継承)

vrdPhysicsInfo クラスは、オブジェクト間の物理的な衝突に関する情報を表します。

このクラスは vrdData から継承され、衝突ノードに関する情報にアクセスするメソッドを提供します。このクラスには、衝突ノードとそのルート ノードという 2 つのノード セットが含まれています。衝突ノードは互いに接触しているノードであり、ルート ノードは、衝突ノードを含む、シーン グラフ内の最上位ノードです。通常、ルート ノードは、物理サービスに物理オブジェクトとして登録されたノードです。

ノードのサブツリー全体に対して構築されている凸型ハル(既定値)のような結合された衝突シェイプを使用している場合、ルート ノードは衝突ノードと同じになります。したがって、一般に、ノードごとに個別の衝突シェイプを使用している場合に限り、ルート ノードは衝突ノードと異なります。

このクラスには、衝突の接点、接触法線、接触距離、および接触インパルスに関する情報も含まれます。これらのリストのインデックスは互いに対応しています。つまり、接点リストの最初の接触点などは、接触法線リストの最初の接触法線に対応します(以下同様)。

概要

関数:

関数

vrdPhysicsInfo.getCollidingNode1()

最初の衝突ノードを返します。

戻り値:最初の衝突ノード。
戻り値の型:vrdNode

vrdPhysicsInfo.getCollidingNode2()

2 番目の衝突ノードを返します。

戻り値:2 番目の衝突ノード。
戻り値の型:vrdNode

vrdPhysicsInfo.getCollidingRootNode1()

最初の衝突ノードのルート ノードを返します。

戻り値:最初の衝突ノードのルート ノード。
戻り値の型:vrdNode

vrdPhysicsInfo.getCollidingRootNode2()

2 番目の衝突ノードのルート ノードを返します。

戻り値:2 番目の衝突ノードのルート ノード。
戻り値の型:vrdNode

vrdPhysicsInfo.getContactDistances()

衝突の接触距離を返します。

接点で接触している 2 つのオブジェクト間の距離。距離が負の場合、オブジェクトは互いに貫通しています。

戻り値:衝突の接触距離。
戻り値の型:List[float]

vrdPhysicsInfo.getContactImpulses()

衝突の接触衝撃力を返します。

接点でオブジェクトに加えられる衝撃力。注: フォースによってオブジェクトが移動することはないため、現在衝撃力はすべてゼロです。

戻り値:衝突の接触衝撃力。
戻り値の型:List[QVector3D]

vrdPhysicsInfo.getContactNormals()

衝突の接触法線を返します。

接触サーフェスの法線。法線方向は、2 番目のオブジェクトから 1 番目のオブジェクトの方向を指します。

戻り値:衝突の接触法線。
戻り値の型:List[QVector3D]

vrdPhysicsInfo.getContactPoints()

衝突の接点を返します。

接点は、衝突が発生している 2 つのオブジェクト間の点です。座標はワールド空間内にあります。

戻り値:衝突の接触点。
戻り値の型:List[QVector3D]