Auf dieser Seite

Qt3DRender::QPickingSettings Class

class Qt3DRender::QPickingSettings

Die Klasse „QPickingSettings“ legt fest, wie die Entitätsauswahl gehandhabt wird. Mehr...

Header: #include <qpickingsettings.h>
CMake: find_package(Qt6 REQUIRED COMPONENTS 3drender)
target_link_libraries(mytarget PRIVATE Qt6::3drender)
qmake: QT += 3drender
In QML: PickingSettings
Erbt von: Qt3DCore::QNode
Status: Veraltet

Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.

Öffentliche Typen

enum FaceOrientationPickingMode { FrontFace, BackFace, FrontAndBackFace }
enum PickMethod { BoundingVolumePicking, TrianglePicking, LinePicking, PointPicking, PrimitivePicking }
enum PickResultMode { NearestPick, AllPicks, NearestPriorityPick }

Eigenschaften

Öffentliche Funktionen

Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode() const
Qt3DRender::QPickingSettings::PickMethod pickMethod() const
Qt3DRender::QPickingSettings::PickResultMode pickResultMode() const
float worldSpaceTolerance() const

Öffentliche Slots

void setFaceOrientationPickingMode(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode)
void setPickMethod(Qt3DRender::QPickingSettings::PickMethod pickMethod)
void setPickResultMode(Qt3DRender::QPickingSettings::PickResultMode pickResultMode)
void setWorldSpaceTolerance(float worldSpaceTolerance)

Signale

void faceOrientationPickingModeChanged(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode)
void pickMethodChanged(Qt3DRender::QPickingSettings::PickMethod pickMethod)
void pickResultModeChanged(Qt3DRender::QPickingSettings::PickResultMode pickResult)
void worldSpaceToleranceChanged(float worldSpaceTolerance)

Ausführliche Beschreibung

Die Auswahl-Einstellungen legen fest, wie die Auswahl von Entitäten gehandhabt wird. Weitere Informationen zur Auswahl von Entitäten finden Sie in der Dokumentation zu den Komponenten „ QObjectPicker “ und „ QRayCaster “.

Bei der Verwendung von „ QObjectPicker “-Komponenten wird die Auswahl durch Mausereignisse ausgelöst.

Bei Verwendung von „ QRayCaster “- oder „ QScreenRayCaster “-Komponenten kann die Auswahl explizit von der Anwendung ausgelöst werden.

In beiden Fällen wird ein Strahl durch die Szene geworfen, um Geometrie zu finden, die den Strahl schneidet.

Siehe auch QObjectPicker, QPickEvent, QPickTriangleEvent, QRayCaster und QScreenRayCaster.

Dokumentation zu Mitgliedstypen

enum QPickingSettings::FaceOrientationPickingMode

Legt fest, wie sich die Ausrichtung der Flächen auf die Auswahl von Dreiecken auswirkt

KonstanteWertBeschreibung
Qt3DRender::QPickingSettings::FrontFace0x01Es werden nur nach vorne gerichtete Dreiecke ausgewählt (Standard).
Qt3DRender::QPickingSettings::BackFace0x02Es werden nur nach hinten gerichtete Dreiecke ausgewählt.
Qt3DRender::QPickingSettings::FrontAndBackFace0x03Es werden sowohl nach vorne gerichtete als auch nach hinten gerichtete Dreiecke ausgewählt.

enum QPickingSettings::PickMethod

Legt die Kommissioniermethode fest.

KonstanteWertBeschreibung
Qt3DRender::QPickingSettings::BoundingVolumePicking0x00Ein Objekt gilt als ausgewählt, wenn der Auswahlstrahl das Begrenzungsvolumen des Objekts schneidet (Standard).
Qt3DRender::QPickingSettings::TrianglePicking0x01Ein Objekt gilt als ausgewählt, wenn der Auswahlstrahl ein beliebiges Dreieck der Mesh-Komponente des Objekts schneidet.
Qt3DRender::QPickingSettings::LinePicking0x02Ein Objekt gilt als ausgewählt, wenn der Auswahlstrahl eine beliebige Kante der Mesh-Komponente des Objekts schneidet.
Qt3DRender::QPickingSettings::PointPicking0x04Ein Objekt gilt als ausgewählt, wenn der Auswahlstrahl einen beliebigen Punkt der Mesh-Komponente des Objekts schneidet.
Qt3DRender::QPickingSettings::PrimitivePickingTrianglePicking | LinePicking | PointPickingEin Objekt gilt als ausgewählt, wenn der Auswahlstrahl einen beliebigen Punkt, eine beliebige Kante oder ein beliebiges Dreieck der Mesh-Komponente des Objekts schneidet.

enum QPickingSettings::PickResultMode

Legt fest, was in die Kommissionierergebnisse einfließt.

KonstanteWertBeschreibung
Qt3DRender::QPickingSettings::NearestPick0Es wird nur das Objekt ausgewählt, das dem Ursprung des Auswahlstrahls am nächsten liegt und von diesem Strahl geschnitten wird (Standard).
Qt3DRender::QPickingSettings::AllPicks1Es werden alle Elemente ausgewählt, die den Auswahlstrahl schneiden.
Qt3DRender::QPickingSettings::NearestPriorityPick2Wählt das Objekt aus, dessen Objekt-Picker den höchsten Wert hat. Wenn mehrere Objekt-Picker die gleiche Priorität haben, wird dasjenige ausgewählt, das auf dem Strahl am nächsten liegt.

Siehe auch Qt3DRender::QPickEvent.

Eigenschaftsdokumentation

faceOrientationPickingMode : FaceOrientationPickingMode

Legt fest, wie sich die Ausrichtung der Flächen auf die Auswahl von Dreiecken auswirkt

Zugriffsfunktionen:

Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode() const
void setFaceOrientationPickingMode(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode)

Benachrichtigungssignal:

void faceOrientationPickingModeChanged(Qt3DRender::QPickingSettings::FaceOrientationPickingMode faceOrientationPickingMode)

pickMethod : PickMethod

Enthält die aktuell verwendete Auswahlmethode.

Standardmäßig wird aus Leistungsgründen beim Ray Casting die Auswahl nach Begrenzungsvolumen verwendet. Dies kann jedoch zu unerwarteten Ergebnissen führen, wenn ein kleines Objekt von der Begrenzungskugel eines dahinter liegenden großen Objekts umschlossen wird.

Die Dreiecksauswahl liefert exakte Ergebnisse, ist jedoch rechenintensiver.

Zugriffsfunktionen:

Qt3DRender::QPickingSettings::PickMethod pickMethod() const
void setPickMethod(Qt3DRender::QPickingSettings::PickMethod pickMethod)

Benachrichtigungssignal:

void pickMethodChanged(Qt3DRender::QPickingSettings::PickMethod pickMethod)

pickResultMode : PickResultMode

Speichert den aktuellen Modus für die Auswahl-Ergebnisse.

Standardmäßig werden Auswahl-Ergebnisse nur für die Entität erzeugt, die der Kamera am nächsten liegt.

Wenn die Auswahlmethode auf „ AllPicks “ gesetzt wird, werden Ereignisse für alle Objekte entlang des Strahls ausgelöst, die über einen „QObjectPicker“ verfügen.

Wird die Auswahlmethode auf „ NearestPriorityPick “ gesetzt, werden Ereignisse für den nächstgelegenen Picker mit der höchsten Priorität ausgelöst. Dies kann verwendet werden, wenn ein bestimmtes Element immer ausgewählt werden soll, auch wenn sich andere davor befinden.

Wird ein „QObjectPicker“ einer Entität mit mehreren untergeordneten Elementen zugewiesen, wird für jedes untergeordnete Element, das den Strahl schneidet, ein Ereignis ausgelöst.

Zugriffsfunktionen:

Qt3DRender::QPickingSettings::PickResultMode pickResultMode() const
void setPickResultMode(Qt3DRender::QPickingSettings::PickResultMode pickResultMode)

Notifier-Signal:

void pickResultModeChanged(Qt3DRender::QPickingSettings::PickResultMode pickResult)

worldSpaceTolerance : float

Enthält den Schwellenwert in Modellraumkoordinaten, der zur Auswertung der Linien- und Punkt-Auswahl verwendet wird.

Zugriffsfunktionen:

float worldSpaceTolerance() const
void setWorldSpaceTolerance(float worldSpaceTolerance)

Benachrichtigungssignal:

void worldSpaceToleranceChanged(float worldSpaceTolerance)

Dokumentation der Mitgliedsfunktionen

[slot] void QPickingSettings::setWorldSpaceTolerance(float worldSpaceTolerance)

Setzt den Schwellenwert für die Linien- und Punkt-Auswahl auf „ worldSpaceTolerance “.

Hinweis: Setter -Funktion für die Eigenschaft „ worldSpaceTolerance “.

Siehe auch „ worldSpaceTolerance()“.

float QPickingSettings::worldSpaceTolerance() const

Gibt die Linien- und Punktgenauigkeit „worldSpaceTolerance“ zurück

Hinweis: Getter -Funktion für die Eigenschaft „worldSpaceTolerance“.

Siehe auch „ setWorldSpaceTolerance()“.

© 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.