QPickingSettings Class
class Qt3DRender::QPickingSettingsQPickingSettingsクラスは、エンティティ・ピッキングの処理方法を指定します。詳細...
Header: | #include <QPickingSettings> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake: | QT += 3drender |
In QML: | PickingSettings |
Inherits: | Qt3DCore::QNode |
Status: | Deprecated |
パブリックタイプ
enum | FaceOrientationPickingMode { FrontFace, BackFace, FrontAndBackFace } |
enum | PickMethod { BoundingVolumePicking, TrianglePicking, LinePicking, PointPicking, PrimitivePicking } |
enum | PickResultMode { NearestPick, AllPicks, NearestPriorityPick } |
プロパティ
- faceOrientationPickingMode : FaceOrientationPickingMode
- pickMethod : PickMethod
- pickResultMode : PickResultMode
- worldSpaceTolerance : float
パブリック関数
Qt3DRender::QPickingSettings::FaceOrientationPickingMode | faceOrientationPickingMode() const |
Qt3DRender::QPickingSettings::PickMethod | pickMethod() const |
Qt3DRender::QPickingSettings::PickResultMode | pickResultMode() const |
float | worldSpaceTolerance() const |
パブリックスロット
void | setFaceOrientationPickingMode(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode) |
void | setPickMethod(Qt3DRender::QPickingSettings::PickMethod pickMethod) |
void | setPickResultMode(Qt3DRender::QPickingSettings::PickResultMode pickResultMode) |
void | setWorldSpaceTolerance(float worldSpaceTolerance) |
シグナル
void | faceOrientationPickingModeChanged(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode) |
void | pickMethodChanged(Qt3DRender::QPickingSettings::PickMethod pickMethod) |
void | pickResultModeChanged(Qt3DRender::QPickingSettings::PickResultMode pickResult) |
void | worldSpaceToleranceChanged(float worldSpaceTolerance) |
詳細説明
ピッキング設定は、エンティティのピッキングがどのように処理されるかを決定する。エンティティピッキングの詳細については、QObjectPicker およびQRayCaster コンポーネントのドキュメントを参照してください。
QObjectPicker コンポーネントを使用する場合、ピッキングはマウス イベントによってトリガされます。
QRayCaster またはQScreenRayCaster コンポーネントを使用する場合、ピッキングはアプリケーションによって明示的にトリガーできます。
どちらの場合も、シーンにレイをキャストして、レイと交差するジオメトリを見つけます。
QObjectPicker,QPickEvent,QPickTriangleEvent,QRayCaster,QScreenRayCasterも参照して ください。
メンバ タイプ ドキュメント
enum QPickingSettings::FaceOrientationPickingMode
面の向きが三角形のピッキングにどのように影響するかを指定する
定数 | 値 | 説明 |
---|---|---|
Qt3DRender::QPickingSettings::FrontFace | 0x01 | 正面を向いた三角形のみがピックされます(デフォルト)。 |
Qt3DRender::QPickingSettings::BackFace | 0x02 | 裏向きの三角形のみがピックされます。 |
Qt3DRender::QPickingSettings::FrontAndBackFace | 0x03 | 表と裏の両方の三角形がピックされます。 |
enum QPickingSettings::PickMethod
ピッキング方法を指定します。
定数 | 値 | 説明 |
---|---|---|
Qt3DRender::QPickingSettings::BoundingVolumePicking | 0x00 | ピッキング光線がエンティティのバウンディングボリュームと交差する場合、エンティティはピッキングされたとみなされます(デフォルト)。 |
Qt3DRender::QPickingSettings::TrianglePicking | 0x01 | ピッキング レイがエンティティのメッシュ コンポーネントの三角形のいずれかと交差する場合、エンティティはピッキングされたと見なされます。 |
Qt3DRender::QPickingSettings::LinePicking | 0x02 | ピッキング光線がエンティティのメッシュコンポーネントのいずれかの辺と交差する場合、エンティティはピッキングされたとみなされます。 |
Qt3DRender::QPickingSettings::PointPicking | 0x04 | ピッキング光線がエンティティのメッシュコンポーネントの任意の点と交差する場合、エンティティはピッキングされたと見なされます。 |
Qt3DRender::QPickingSettings::PrimitivePicking | TrianglePicking | LinePicking | PointPicking | ピッキング光線がエンティティのメッシュコンポーネントの点、辺、三角形のいずれかと交差する場合、エンティティはピッキングされたとみなされます。 |
enum QPickingSettings::PickResultMode
ピッキング結果に何が含まれるかを指定します。
定数 | 値 | 説明 |
---|---|---|
Qt3DRender::QPickingSettings::NearestPick | 0 | ピッキング光線と交差する、ピッキング光線の原点に最も近いエンティティのみがピッキングされます(デフォルト)。 |
Qt3DRender::QPickingSettings::AllPicks | 1 | ピッキング光線と交差するすべてのエンティティがピックされます。 |
Qt3DRender::QPickingSettings::NearestPriorityPick | 2 | オブジェクトピッカーの値が最も高いエンティティを選択します。複数のオブジェクト ピッカーの優先順位が同じ場合は、レイ上で最も近いものが選択されます。 |
Qt3DRender::QPickEventも参照してください 。
プロパティ ドキュメント
faceOrientationPickingMode : FaceOrientationPickingMode
面の向きが三角形ピッキングにどのように影響するかを指定します。
アクセス関数:
Qt3DRender::QPickingSettings::FaceOrientationPickingMode | faceOrientationPickingMode() const |
void | setFaceOrientationPickingMode(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode) |
通知シグナル:
void | faceOrientationPickingModeChanged(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode) |
pickMethod : PickMethod
現在のピック方法を保持します。
デフォルトでは、パフォーマンス上の理由から、レイキャストはバウンディングボリュームピッキングを使用します。しかし、小さなオブジェクトが背後の大きなオブジェクトの外接球に入り込んでいる場合、予期せぬ結果につながる可能性があります。
三角形ピッキングは正確な結果をもたらしますが、計算コストが高くなります。
アクセス関数
Qt3DRender::QPickingSettings::PickMethod | pickMethod() const |
void | setPickMethod(Qt3DRender::QPickingSettings::PickMethod pickMethod) |
通知シグナル:
void | pickMethodChanged(Qt3DRender::QPickingSettings::PickMethod pickMethod) |
pickResultMode : PickResultMode
現在のピック結果モードを保持します。
デフォルトでは、ピック結果はカメラに最も近いエンティティに対してのみ生成されます。
ピックメソッドをAllPicks に設定すると、レイに沿ってQObjectPicker を持つすべてのエンティティに対してイベントがトリガーされます。
pick メソッドをNearestPriorityPick に設定すると、最も近い優先順位の高いピッカーに対してイベントがトリガーされます。これは、指定した要素が常に選択される必要がある場合に使用できます。
QObjectPicker が複数の子を持つエンティティに割り当てられている場合、レイと交差する各子エンティティに対してイベントがトリガーされます。
アクセス関数
Qt3DRender::QPickingSettings::PickResultMode | pickResultMode() const |
void | setPickResultMode(Qt3DRender::QPickingSettings::PickResultMode pickResultMode) |
通知シグナル:
void | pickResultModeChanged(Qt3DRender::QPickingSettings::PickResultMode pickResult) |
worldSpaceTolerance : float
線と点のピッキングを評価するために使用される、モデル空間座標でのしきい値を保持します。
アクセス関数
float | worldSpaceTolerance() const |
void | setWorldSpaceTolerance(float worldSpaceTolerance) |
ノーティファイアシグナル:
void | worldSpaceToleranceChanged(float worldSpaceTolerance) |
メンバ関数 ドキュメント
[slot]
void QPickingSettings::setWorldSpaceTolerance(float worldSpaceTolerance)
線と点のピッキングに使用する閾値をworldSpaceTolerance に設定します。
備考: プロパティのセッター関数worldSpaceTolerance 。
worldSpaceTolerance()も参照 。
float QPickingSettings::worldSpaceTolerance() const
線と点の精度 worldSpaceTolerance を返す。
注 :プロパティ worldSpaceTolerance に対するゲッター関数。
setWorldSpaceTolerance()も参照 。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。