Qt3DExtras::QAbstractCameraController Class
class Qt3DExtras::QAbstractCameraControllerDie Klasse „QAbstractCameraController“ bietet grundlegende Funktionen für Kamerasteuerungen. Mehr...
| Header: | #include <qabstractcameracontroller.h> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS 3dextras) target_link_libraries(mytarget PRIVATE Qt6::3dextras) |
| qmake: | QT += 3dextras |
| Erbt von: | Qt3DCore::QEntity |
| Vererbt an: | Qt3DExtras::QFirstPersonCameraController und Qt3DExtras::QOrbitCameraController |
| Status: | Veraltet |
Diese Klasse ist veraltet. Wir raten dringend davon ab, sie in neuem Code zu verwenden.
Eigenschaften
|
|
Öffentliche Funktionen
| float | acceleration() const |
| Qt3DRender::QCamera * | camera() const |
| float | deceleration() const |
| float | linearSpeed() const |
| float | lookSpeed() const |
| void | setAcceleration(float acceleration) |
| void | setCamera(Qt3DRender::QCamera *camera) |
| void | setDeceleration(float deceleration) |
| void | setLinearSpeed(float linearSpeed) |
| void | setLookSpeed(float lookSpeed) |
Signale
| void | accelerationChanged(float acceleration) |
| void | cameraChanged() |
| void | decelerationChanged(float deceleration) |
| void | linearSpeedChanged() |
| void | lookSpeedChanged() |
Geschützte Funktionen
| Qt3DInput::QKeyboardDevice * | keyboardDevice() const |
| Qt3DInput::QMouseDevice * | mouseDevice() const |
Private Funktionen
| virtual void | moveCamera(const Qt3DExtras::QAbstractCameraController::InputState &state, float dt) = 0 |
Ausführliche Beschreibung
QAbstractCameraController richtet die Eingabe über Tastatur, Maus und andere Geräte ein und verarbeitet diese. QAbstractCameraController ist eine abstrakte Klasse und kann selbst nicht instanziiert werden. Sie stellt eine Standardschnittstelle für Kamerasteuerungen bereit.
Dokumentation zu den Eigenschaften
acceleration : float
Enthält die aktuelle Beschleunigung des Kameracontrollers.
Zugriffsfunktionen:
| float | acceleration() const |
| void | setAcceleration(float acceleration) |
Benachrichtigungssignal:
| void | accelerationChanged(float acceleration) |
camera : Qt3DRender::QCamera*
Enthält die aktuell gesteuerte Kamera.
Zugriffsfunktionen:
| Qt3DRender::QCamera * | camera() const |
| void | setCamera(Qt3DRender::QCamera *camera) |
Benachrichtigungssignal:
| void | cameraChanged() |
deceleration : float
Enthält die aktuelle Verzögerung des Kamerasteuerungsmoduls.
Zugriffsfunktionen:
| float | deceleration() const |
| void | setDeceleration(float deceleration) |
Benachrichtigungssignal:
| void | decelerationChanged(float deceleration) |
linearSpeed : float
Enthält die aktuelle lineare Geschwindigkeit des Kameracontrollers. Die lineare Geschwindigkeit bestimmt die Bewegungsgeschwindigkeit der Kamera.
Der Standardwert ist „ 10.0 “.
Zugriffsfunktionen:
| float | linearSpeed() const |
| void | setLinearSpeed(float linearSpeed) |
Benachrichtigungssignal:
| void | linearSpeedChanged() |
lookSpeed : float
Enthält die aktuelle Blickgeschwindigkeit des Kameracontrollers. Die Blickgeschwindigkeit bestimmt die Drehgeschwindigkeit der Kamera bei Schwenk- und Neigebewegungen.
Der Standardwert ist „ 180.0 “.
Zugriffsfunktionen:
| float | lookSpeed() const |
| void | setLookSpeed(float lookSpeed) |
Benachrichtigungssignal:
| void | lookSpeedChanged() |
Dokumentation der Mitgliedsfunktionen
[protected] Qt3DInput::QKeyboardDevice *QAbstractCameraController::keyboardDevice() const
Ermöglicht den Zugriff auf die Tastatur.
[protected] Qt3DInput::QMouseDevice *QAbstractCameraController::mouseDevice() const
Bietet Zugriff auf das Mausgerät.
[pure virtual private] void QAbstractCameraController::moveCamera(const Qt3DExtras::QAbstractCameraController::InputState &state, float dt)
Unterklassen müssen diese Methode überschreiben, um die für den Controller spezifische Kamerabewegung zu implementieren. ` state ` stellt den Eingabezustand dar, und ` dt ` ist der Zeitschritt.
Diese Funktion wird immer dann aufgerufen, wenn eine Frame-Aktion ausgelöst wird.
© 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.