vrdVRDevice(vrdObject を継承)
コントローラやトラッカーなどの VR デバイスを表します。このデバイスは、実際のデバイスがシステムに接続される前に作成できます。デバイスが接続されると、VRED は既に作成されているオブジェクトに物理デバイスをマップします。これにより、事前にマッピングを定義できます。
ご注意ください。実際のハードウェア デバイスを接続する前に vrDeviceService.getVRDevice(name) と vrDeviceService.getVRDeviceBySerialNumber(serialNumber) の両方を呼び出すと、2 つの異なる vrdVRDevice オブジェクトが取得されます。ハードウェアが使用可能になる前に、それらが同じ物理デバイスに属しているかどうかを確認することはできません。
ハードウェアが接続されると、これらのデバイス ノードは内部的に正しい物理デバイスに解決されますが、2 つの個別のオブジェクト インスタンスになるため、「==」演算子を使用してこれらのノードを比較することはできません。
vrdVRDevice.getName() または vrdVRDevice.getSerialNumber() を使用して比較する方が安全です(ノードを取得するために名前を使用するかシリアル番号を使用するかに応じて)。
vrdVRDevice.addVirtualButton(button, physicalButton)ボタンの位置を新しい信号にマッピングする仮想ボタンをコントローラに追加します。
| パラメータ: |
|
|---|
vrdVRDevice.disableRay()現在アクティブなポインティング レイを無効にします。
vrdVRDevice.enableRay(axis)コントローラから放出されるポインティング レイを有効にします。
| パラメータ: | axis (string): ポインティング レイの軸。可能な値は、コントローラーの座標系のそれぞれの軸を表す「x」、「y」、「z」、「ポインタ」インタラクションの軸を表す「custom」、「テレポート」インタラクションの軸を表す「teleportaxis」、コントローラーハンドルを通る軸を表す「controllerhandle」、手の視覚化において左右の人差し指をそれぞれ通る軸を表す「leftfinger」と「rightfinger」です。 |
|---|
vrdVRDevice.getButtonState(button)現在のボタンの状態を取得します。
| パラメータ: | button (string): ボタンの名前。 |
|---|---|
| 戻り値: | 現在のボタンの状態。ボタンの名前が VR デバイスにとって不明である場合は、この状態が無効になることがあります。 |
| 戻り値の型: | vrdButtonState |
vrdVRDevice.getName()デバイスの名前を取得します
| 戻り値: | デバイスの名前。デバイスが無効な場合は空白になります。 |
|---|---|
| 戻り値の型: | string |
vrdVRDevice.getNode()VR デバイスの原点にあるノードを取得します。このノードはシーングラフの一部ではありません。デバイスに一部のジオメトリをアタッチする必要がある場合、コンストレイント(vrConstraintService::createParentConstraint(const QList<vrdNode> &,const vrdNode &,const bool)を参照)を使用する必要があります。例: vr/attachToController.py
| 戻り値: | VR デバイスの原点にあるノード。 |
|---|---|
| 戻り値の型: | vrdNode |
vrdVRDevice.getSerialNumber()デバイスのシリアル番号を取得します。
| 戻り値: | シリアル番号。デバイスが名前を使用して作成されていて、物理デバイスがまだ接続されていない場合は、この値が空白になることがあります。 |
|---|---|
| 戻り値の型: | string |
vrdVRDevice.getTrackingMatrix()| 戻り値: | 現在のトラッキング マトリックス |
|---|---|
| 戻り値の型: | QMatrix4x4 |
vrdVRDevice.getVisualizationMode()現在の表示モードを取得します。
| 戻り値: | モードの ID: 0 = コントローラ、1 = 手、2 = コントローラと手、3 = 初期化されていない |
|---|---|
| 戻り値の型: | integer |
vrdVRDevice.getVisualizationNode()コントローラ可視化のルート ノードを取得します。コントローラが現在表示されていない場合や、トラッキング システムで検出されない場合、この関数は空のノードを返します。
| 戻り値: | VR デバイスのルート ノード。 |
|---|---|
| 戻り値の型: | vrdNode |
vrdVRDevice.getWristOrientationAngle()手首の方向の角度を返します。手首が静止位置にある場合は 0 です。これは、VRED に組み込まれているテレポートの向きを決定する場合に使用される角度と同じです。
| 戻り値: | 手首の角度(角度数)。 |
|---|---|
| 戻り値の型: | float |
vrdVRDevice.isVisible()デバイスの可視性を取得します。
| 戻り値: | true = 表示、false = 非表示 |
|---|---|
| 戻り値の型: | bool |
vrdVRDevice.pick()ポインティング レイとシーンの交点で、シーン内のオブジェクトの選択を試みます。
| 戻り値: | 交差のデータ。 |
|---|---|
| 戻り値の型: | vrdRayIntersection |
vrdVRDevice.removeVirtualButton(button, physicalButton)物理ボタンに関連する仮想ボタンを削除します。
| パラメータ: |
|
|---|
vrdVRDevice.removeVirtualButton(virtualButton, physicalButton)物理ボタンに関連する仮想ボタンを削除します。
| パラメータ: |
|
|---|
vrdVRDevice.setButtonPressed(state, button)ボタンの押下をシミュレートします。
| パラメータ: |
|
|---|
vrdVRDevice.setButtonTouched(state, button)ボタンの押下をシミュレートします。
| パラメータ: |
|
|---|
vrdVRDevice.setTrackingMatrix(matrix)トラッキング位置の変更をシミュレートします。
| パラメータ: | matrix (QMatrix4x4): トラッキング マトリックス。 |
|---|
vrdVRDevice.setVisible(visible)VR デバイスの表示/非表示を設定します。
| パラメータ: | visible (bool): 表示の場合は true、非表示の場合は false。 |
|---|
vrdVRDevice.setVisualizationMode(mode)可視化モードを設定します。
| パラメータ: | mode (integer): モードの ID: 0 = コントローラ、1 = 手、2 = コントローラと手 |
|---|
vrdVRDevice.signal()トリガ可能な信号を取得します。
| 戻り値: | 信号オブジェクト。 |
|---|---|
| 戻り値の型: | Q_SLOTvrdVRDeviceSignal |
vrdVRDevice.vibrate(milliseconds, axisId)デバイスのバイブレーション機能が利用可能な場合は、この機能をトリガします。
| パラメータ: |
|
|---|