QObjectPicker Class
class Qt3DRender::QObjectPickerQObjectPicker クラスは、ピッキングと呼ばれる処理によって QEntity と対話するために使用できるコンポーネントのインスタンス化です。詳細...
ヘッダー | #include <QObjectPicker> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake | QT += 3drender |
QML で | ObjectPicker |
を継承しています: | Qt3DCore::QComponent |
ステータス | 非推奨 |
プロパティ
|
パブリック機能
bool | containsMouse() const |
bool | isDragEnabled() const |
bool | isHoverEnabled() const |
bool | isPressed() const |
int | priority() const |
パブリックスロット
void | setDragEnabled(bool dragEnabled) |
void | setHoverEnabled(bool hoverEnabled) |
void | setPriority(int priority) |
シグナル
void | clicked(Qt3DRender::QPickEvent *pick) |
void | containsMouseChanged(bool containsMouse) |
void | dragEnabledChanged(bool dragEnabled) |
void | entered() |
void | exited() |
void | hoverEnabledChanged(bool hoverEnabled) |
void | moved(Qt3DRender::QPickEvent *pick) |
void | pressed(Qt3DRender::QPickEvent *pick) |
void | pressedChanged(bool pressed) |
void | priorityChanged(int priority) |
void | released(Qt3DRender::QPickEvent *pick) |
詳細説明
ビューポートとカメラの組み合わせごとに、picking はシーンを通してレイをキャストし、そのレイと交差するバウンディングボリュームのエンティティを見つけます。バウンディング ボリュームは、ジオメトリの boundingVolumePositionAttribute で指定されたアトリビュート バッファの値を使用して計算されます。
シグナルpressed()、released()、clicked()、moved()、entered()、exited() は、pickAttribute プロパティで定義されたバウンディング ボリュームがレイと交差するときに発行されます。
ほとんどのシグナルは、QPickEvent インスタンスを運びます。QPickingSettings::pickMode() がQPickingSettings::TrianglePicking に設定されている場合、pick パラメータの実際のタイプはQPickTriangleEvent になります。
ピック・クエリは、マウスを押したときと離したときに実行されます。ドラッグが有効な場合、いずれかのボタンが押されている間、マウスが移動するたびにクエリが実行されます。hover が有効な場合、ボタンが押されていなくても、マウスを動かすたびにクエリが実行されます。
一般化されたレイキャストクエリについては、Qt3DRender::QRayCaster およびQt3DRender::QScreenRayCaster を参照してください。
注意: このコンポーネントのインスタンスは共有すべきではありません。この条件を守らないと、ほとんどの場合、未定義の動作になります。
注意 : カメラ遠平面値はピッキングに影響し、~100 000 より大きい場合、浮動小数点精度のため不正な結果を生成します。
Qt3DRender::QPickingSettings,Qt3DCore::QGeometry,Qt3DCore::QAttribute,Qt3DRender::QPickEvent,Qt3DRender::QPickTriangleEvent,Qt3DRender::QNoPickingも参照して ください。
プロパティ・ドキュメンテーション
[read-only]
containsMouse : const bool
オブジェクトピッカーにマウスが含まれているかどうかを指定します。
アクセス関数:
bool | containsMouse() const |
通知シグナル
void | containsMouseChanged(bool containsMouse) |
dragEnabled : bool
ドラッグが有効かどうかを指定する
アクセス機能
bool | isDragEnabled() const |
void | setDragEnabled(bool dragEnabled) |
通知シグナル
void | dragEnabledChanged(bool dragEnabled) |
hoverEnabled : bool
ホバーが有効かどうかを指定する
アクセス機能
bool | isHoverEnabled() const |
void | setHoverEnabled(bool hoverEnabled) |
通知シグナル
void | hoverEnabledChanged(bool hoverEnabled) |
[read-only]
pressed : const bool
オブジェクトピッカーが現在押されているかどうかを指定します。
アクセス関数:
bool | isPressed() const |
通知シグナル
void | pressedChanged(bool pressed) |
priority : int
QPickingSettings::pickResultMode がQPickingSettings::NearestPriorityPick に設定されている場合に、ピック結果を優先順位でフィルタリングする際に使用する優先順位。
アクセス関数:
int | priority() const |
void | setPriority(int priority) |
通知シグナル:
void | priorityChanged(int priority) |
メンバ関数ドキュメント
[signal]
void QObjectPicker::clicked(Qt3DRender::QPickEvent *pick)
このシグナルは、pickAttribute プロパティによって定義されたバウンディングボリュームが、マウスクリック時にレイと交差したときに発行されます。QPickEvent pick には、イベントの詳細が含まれています。
bool QObjectPicker::containsMouse() const
オブジェクトピッカーが現在マウスを含んでいる場合、true を返します。
注: containsMouseプロパティのゲッター関数です。
[signal]
void QObjectPicker::entered()
このシグナルは、pickAttributeプロパティで定義されたバウンディングボリュームが、そのボリュームに入るマウス上のレイと交差したときに発行されます。
[signal]
void QObjectPicker::exited()
このシグナルは、pickAttributeプロパティで定義されたバウンディングボリュームが、ボリュームから出るレイ上でレイと交差したときに発行されます。
bool QObjectPicker::isDragEnabled() const
ドラッグが有効であれば true を返す
注意: dragEnabled プロパティのゲッター関数です。
bool QObjectPicker::isHoverEnabled() const
ホバーが有効な場合、true を返す
注意: hoverEnabled プロパティのゲッター関数です。
[signal]
void QObjectPicker::moved(Qt3DRender::QPickEvent *pick)
このシグナルは、pickAttribute プロパティによって定義されたバウンディングボリュームが、ボタンが押されたマウスの移動でレイと交差したときに発行されます。QPickEvent pick には、イベントの詳細が含まれています。
[signal]
void QObjectPicker::pressed(Qt3DRender::QPickEvent *pick)
このシグナルは、pickAttribute プロパティによって定義されたバウンディングボリュームが、マウスを押したときにレイと交差したときに発行されます。QPickEvent pick には、イベントの詳細が含まれています。
[signal]
void QObjectPicker::released(Qt3DRender::QPickEvent *pick)
このシグナルは、pickAttribute プロパティによって定義されたバウンディングボリュームが、マウスリリースのレイと交差したときに発行されます。QPickEvent pick には、イベントの詳細が含まれています。
[slot]
void QObjectPicker::setDragEnabled(bool dragEnabled)
dragEnabled プロパティを以下に設定する。dragEnabled
注: プロパティdragEnabled のセッター関数。
isDragEnabled()も参照してください 。
[slot]
void QObjectPicker::setHoverEnabled(bool hoverEnabled)
hoverEnabled プロパティを以下に設定する。hoverEnabled
注: プロパティhoverEnabled のセッター関数。
isHoverEnabled()も参照してください 。
[slot]
void QObjectPicker::setPriority(int priority)
ピッカーの優先順位をpriority に設定します。これはQPickingSettings のピッキング結果モードがQPickingSettings::NearestPriorityPick に設定されている場合に使用されます。ピッキング結果は、優先順位が高く、ピッキング距離が短い順にソートされます。
注: プロパティpriority のセッター関数です。
priority()も参照してください 。
© 2025 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.