Auf dieser Seite

ObjectPicker QML Type

Die Klasse ObjectPicker instanziiert eine Komponente, die zur Interaktion mit einem Entity durch einen als "Picking" bekannten Prozess verwendet werden kann. Mehr...

Import Statement: import Qt3D.Render 2.11
In C++: QObjectPicker
Status: Deprecated

Eigenschaften

Signale

Detaillierte Beschreibung

Für jede Kombination von Ansichtsfenster und Kamera wirft Picking einen Strahl durch die Szene, um Objekte zu finden, deren Bounding Volume den Strahl schneidet. Das Begrenzungsvolumen wird anhand der Werte im Attributpuffer berechnet, der durch das BoundingVolumePositionAttribute der Geometrie angegeben wird.

Die Signale pressed(), released(), clicked(), moved(), entered() und exited() werden ausgegeben, wenn das durch die Eigenschaft pickAttribute definierte Begrenzungsvolumen einen Strahl schneidet.

Die meisten Signale enthalten eine PickEvent -Instanz. Wenn PickingSettings.pickMode auf PickingSettings.TrianglePicking gesetzt ist, ist der aktuelle Typ des Pick-Parameters PickTriangleEvent.

Pick-Abfragen werden beim Drücken der Maus und beim Loslassen der Maus durchgeführt. Wenn Drag aktiviert ist, werden Abfragen auch bei jeder Mausbewegung durchgeführt, während eine beliebige Taste gedrückt ist. Wenn Hover aktiviert ist, erfolgt die Abfrage bei jeder Mausbewegung, auch wenn keine Taste gedrückt ist.

Hinweis: Um Hover-Ereignisse in QtQuick zu empfangen, muss die Eigenschaft hoverEnabled von Scene3D ebenfalls gesetzt sein.

Hinweis: Instanzen dieser Komponente sollten nicht gemeinsam genutzt werden, da die Nichtbeachtung dieser Bedingung höchstwahrscheinlich zu undefiniertem Verhalten führt.

Hinweis: Der Wert für die Kamera-Fernebene beeinflusst das Picking und führt aufgrund der Fließkommagenauigkeit zu falschen Ergebnissen, wenn er größer als ~100 000 ist.

Siehe auch PickingSettings, Geometry, Attribute, PickEvent, PickTriangleEvent, und NoPicking.

Dokumentation der Eigenschaften

containsMouse : bool [read-only]

Gibt an, ob der Objektpicker derzeit die Maus enthält

dragEnabled : bool

hoverEnabled : bool

Gibt an, ob Hover aktiviert ist

pressed : bool [read-only]

Gibt an, ob der Objektpicker gerade gedrückt ist

priority : int

Die Priorität, die beim Filtern der Pick-Ergebnisse nach Priorität verwendet werden soll, wenn PickingSettings.pickResultMode auf PickingSettings.PriorityPick eingestellt ist.

Signal-Dokumentation

clicked(PickEvent pick)

Dieses Signal wird ausgegeben, wenn sich das durch die Eigenschaft pickAttribute definierte Begrenzungsvolumen bei einem Mausklick mit einem Strahl schneidet. Die Schnittpunktinformationen sind über den Parameter pick zugänglich.

Hinweis: Der entsprechende Handler ist onClicked.

entered()

Dieses Signal wird ausgegeben, wenn das durch die pickAttribute-Eigenschaft definierte Begrenzungsvolumen mit einem in das Volumen eintretenden Mausstrahl gekreuzt wird.

Hinweis: Der entsprechende Handler ist onEntered.

exited()

Dieses Signal wird ausgegeben, wenn das durch die pickAttribute-Eigenschaft definierte Begrenzungsvolumen einen Strahl auf dem Strahl schneidet, der das Volumen verlässt.

Hinweis: Der entsprechende Handler ist onExited.

moved(PickEvent pick)

Dieses Signal wird ausgegeben, wenn sich das durch die Eigenschaft pickAttribute definierte Begrenzungsvolumen bei einer Mausbewegung mit gedrückter Taste mit einem Strahl schneidet. Die Schnittpunktinformationen sind über den Parameter pick zugänglich.

Hinweis: Der entsprechende Handler ist onMoved.

pressed(PickEvent pick)

Dieses Signal wird ausgegeben, wenn sich das durch die pickAttribute-Eigenschaft definierte Begrenzungsvolumen bei einem Mausklick mit einem Strahl schneidet. Die Schnittpunktinformationen sind über den Parameter pick zugänglich.

Hinweis: Der entsprechende Handler ist onPressed.

released(PickEvent pick)

Dieses Signal wird ausgegeben, wenn sich das durch die pickAttribute-Eigenschaft definierte Begrenzungsvolumen beim Loslassen der Maus mit einem Strahl schneidet. Die Schnittpunktinformationen sind über den Parameter pick zugänglich.

Hinweis: Der entsprechende Handler ist onReleased.

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