このページでは

Qt3DRender::QScreenRayCaster Class

class Qt3DRender::QScreenRayCaster

画面座標に基づいてレイキャスティングテストを実行します。詳細...

ヘッダー: #include <qscreenraycaster.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
QML内: ScreenRayCaster
継承元: Qt3DRender::QAbstractRayCaster
ステータス: 非推奨

このクラスは非推奨です。新しいコードでの使用は強く推奨しません。

プロパティ

パブリック関数

QPoint position() const

パブリックスロット

void setPosition(const QPoint &position)
void trigger()
void trigger(const QPoint &position)

シグナル

void positionChanged(const QPoint &position)

詳細な説明

QScreenRayCaster を使用すると、画面空間の座標を指定してレイキャスティングのテストを実行できます。この座標は、ニアプレーンとファープレーンの間で実際の 3D レイを構築するために使用されます。

QRayCaster およびQNoPickingも参照してください 。

プロパティのドキュメント

position : QPoint

交差判定のために実際の3Dレイを計算する際に使用される、スクリーンスペース上の位置を保持します。

注:座標が有効範囲内にある限り、利用可能なすべてのレンダリング面に対してこの座標が使用されます。

アクセス関数:

QPoint position() const
void setPosition(const QPoint &position)

通知シグナル:

void positionChanged(const QPoint &position)

メンバ関数のドキュメント

[slot] void QScreenRayCaster::trigger()

コンポーネントを有効にし、現在の座標値を使用してテストを実行するための便利な方法です。

注:この スロットは オーバーロードされています。このスロットに接続するには:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        screenRayCaster, qOverload<>(&QScreenRayCaster::trigger));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        screenRayCaster, [receiver = screenRayCaster]() { receiver->trigger(); });
その他の例や手法については、「オーバーロードされたスロットへの接続」を参照してください。

[slot] void QScreenRayCaster::trigger(const QPoint &position)

座標値 `position ` を設定し、コンポーネントがテストをトリガーできるようにするための便利な方法です。

注:この スロットは オーバーロードされています。このスロットに接続するには:

// Connect using qOverload:
connect(sender, &SenderClass::signal,
        screenRayCaster, qOverload(&QScreenRayCaster::trigger));

// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
        screenRayCaster, [receiver = screenRayCaster](const QPoint &position) { receiver->trigger(position); });
その他の例や手法については、「オーバーロードされたスロットへの接続」を参照してください。

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.