Auf dieser Seite

QAbstract3DInputHandler Class

Die Basisklasse für Implementierungen von Eingabe-Handlern. Mehr...

Header: #include <QAbstract3DInputHandler>
CMake: find_package(Qt6 REQUIRED COMPONENTS DataVisualization)
target_link_libraries(mytarget PRIVATE Qt6::DataVisualization)
qmake: QT += datavisualization
Seit: QtDataVisualization 1.0
In QML: AbstractInputHandler3D
Erbt von: QObject
Vererbt an:

Q3DInputHandler

Status: Veraltet

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

Öffentliche Typen

enum InputView { InputViewNone, InputViewOnPrimary, InputViewOnSecondary }

Eigenschaften

Öffentliche Funktionen

virtual ~QAbstract3DInputHandler()
QPoint inputPosition() const
QAbstract3DInputHandler::InputView inputView() const
virtual void mouseDoubleClickEvent(QMouseEvent *event)
virtual void mouseMoveEvent(QMouseEvent *event, const QPoint &mousePos)
virtual void mousePressEvent(QMouseEvent *event, const QPoint &mousePos)
virtual void mouseReleaseEvent(QMouseEvent *event, const QPoint &mousePos)
Q3DScene *scene() const
void setInputPosition(const QPoint &position)
void setInputView(QAbstract3DInputHandler::InputView inputView)
void setScene(Q3DScene *scene)
virtual void touchEvent(QTouchEvent *event)
virtual void wheelEvent(QWheelEvent *event)

Signale

void inputViewChanged(QAbstract3DInputHandler::InputView view)
void positionChanged(const QPoint &position)
void sceneChanged(Q3DScene *scene)

Geschützte Funktionen

QAbstract3DInputHandler(QObject *parent = nullptr)
int prevDistance() const
QPoint previousInputPos() const
void setPrevDistance(int distance)
void setPreviousInputPos(const QPoint &position)

Ausführliche Beschreibung

QAbstract3DInputHandler ist die Basisklasse, von der verschiedene Implementierungen zur Eingabeverarbeitung abgeleitet sind, die Eingabeereignisse entgegennehmen und diese in Kamera- und Lichtbewegungen umsetzen. Eingabeverarbeiter wandeln außerdem Roh-Eingabeereignisse in Schnitt- und Auswahlereignisse in der Szene um.

Dokumentation zu den Mitgliedstypen

enum QAbstract3DInputHandler::InputView

Vordefinierte Eingabeansichten für Maus- und Touch-basierte Eingabebehandler.

KonstanteWertBeschreibung
QAbstract3DInputHandler::InputViewNone0Maus oder Touch nicht auf einer Ansicht.
QAbstract3DInputHandler::InputViewOnPrimary1Maus- oder Touch-Eingabe im primären Ansichtsbereich empfangen. Wenn die sekundäre Ansicht angezeigt wird, wenn „ inputView “ den Wert „InputViewOnPrimary“ annimmt, wird die sekundäre Ansicht geschlossen.
QAbstract3DInputHandler::InputViewOnSecondary2Maus- oder Touch-Eingabe im sekundären Ansichtsbereich empfangen.

Eigenschaftsdokumentation

inputPosition : QPoint

Diese Eigenschaft speichert die letzte Eingabeposition auf der Grundlage der verarbeiteten Eingabeereignisse.

Zugriffsfunktionen:

QPoint inputPosition() const
void setInputPosition(const QPoint &position)

Benachrichtigungssignal:

void positionChanged(const QPoint &position)

inputView : InputView

Diese Eigenschaft enthält die aktuell ausgewählte Eingabeansicht, basierend auf der Ansicht der verarbeiteten Eingabeereignisse.

Einer der Enum-Werte „ InputView “.

Wenn sich die Ansicht ändert, wird das Signal „ inputViewChanged “ ausgelöst.

Zugriffsfunktionen:

QAbstract3DInputHandler::InputView inputView() const
void setInputView(QAbstract3DInputHandler::InputView inputView)

Notifier-Signal:

void inputViewChanged(QAbstract3DInputHandler::InputView view)

Siehe auch „ InputView “.

scene : Q3DScene*

Diese Eigenschaft enthält die 3D-Szene, die dieser abstrakte Eingabe-Handler steuert.

Ein Eingabehandler kann eine Szene steuern. Durch das Zuweisen einer Szene zu einem Eingabehandler wird das Eigentumsrecht an der Szene nicht übertragen.

Zugriffsfunktionen:

Q3DScene *scene() const
void setScene(Q3DScene *scene)

Notifier-Signal:

void sceneChanged(Q3DScene *scene)

Dokumentation der Mitgliedsfunktionen

[explicit protected] QAbstract3DInputHandler::QAbstract3DInputHandler(QObject *parent = nullptr)

Erstellt die Basisklasse. Es kann ein optionaler Parameter „ parent “ angegeben werden, der dann an den Konstruktor „ QObject “ übergeben wird.

[virtual noexcept] QAbstract3DInputHandler::~QAbstract3DInputHandler()

Löscht die Basisklasse.

[virtual] void QAbstract3DInputHandler::mouseDoubleClickEvent(QMouseEvent *event)

Überschreiben Sie diese Methode, um Doppelklick-Ereignisse zu verarbeiten. Das Doppelklick-Ereignis wird in der Methode „ event “ ausgelöst.

[virtual] void QAbstract3DInputHandler::mouseMoveEvent(QMouseEvent *event, const QPoint &mousePos)

Überschreiben Sie diese Methode, um Mausbewegungsereignisse zu verarbeiten. Das Mausbewegungsereignis wird in ` event ` übergeben, die Mausposition in ` mousePos`.

[virtual] void QAbstract3DInputHandler::mousePressEvent(QMouseEvent *event, const QPoint &mousePos)

Überschreiben Sie diese Methode, um Mausklick-Ereignisse zu verarbeiten. Das Mausklick-Ereignis wird in ` event ` übergeben, die Mausposition in ` mousePos`.

[virtual] void QAbstract3DInputHandler::mouseReleaseEvent(QMouseEvent *event, const QPoint &mousePos)

Überschreiben Sie diese Methode, um Ereignisse beim Loslassen der Maustaste zu verarbeiten. Das Ereignis beim Loslassen der Maustaste wird in ` event ` zurückgegeben, die Mausposition in ` mousePos`.

[protected] int QAbstract3DInputHandler::prevDistance() const

Gibt die Manhattan-Länge zwischen den letzten beiden Eingabepositionen zurück.

Siehe auch „ setPrevDistance()“.

[protected] QPoint QAbstract3DInputHandler::previousInputPos() const

Gibt die vorherige Eingabeposition zurück.

Siehe auch ` setPreviousInputPos()`.

[protected] void QAbstract3DInputHandler::setPrevDistance(int distance)

Legt die „ distance “ (Manhattan-Länge) zwischen den letzten beiden Eingabepositionen fest.

Siehe auch „ prevDistance()“.

[protected] void QAbstract3DInputHandler::setPreviousInputPos(const QPoint &position)

Setzt die vorherige Eingabeposition auf den durch position angegebenen Punkt.

Siehe auch previousInputPos().

[virtual] void QAbstract3DInputHandler::touchEvent(QTouchEvent *event)

Überschreiben Sie diese Methode, um Touch-Eingabeereignisse zu verarbeiten. Das Touch-Ereignis wird in der Methode „ event “ übergeben.

[virtual] void QAbstract3DInputHandler::wheelEvent(QWheelEvent *event)

Überschreiben Sie diese Methode, um Mausrad-Ereignisse zu verarbeiten. Das Mausrad-Ereignis wird in der Methode „ event “ übergeben.

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