Sur cette page

Qt3DExtras::QAbstractCameraController Class

class Qt3DExtras::QAbstractCameraController

La classe `QAbstractCameraController` offre des fonctionnalités de base pour les contrôleurs de caméra. En savoir plus...

En-tête : #include <qabstractcameracontroller.h>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3dextras)
target_link_libraries(mytarget PRIVATE Qt6::3dextras)
qmake : QT += 3dextras
Hérite de : Qt3DCore::QEntity
Hérité par :

Qt3DExtras::QFirstPersonCameraController et Qt3DExtras::QOrbitCameraController

Statut : Obsolète

Cette classe est obsolète. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.

Propriétés

Fonctions publiques

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)

Signaux

void accelerationChanged(float acceleration)
void cameraChanged()
void decelerationChanged(float deceleration)
void linearSpeedChanged()
void lookSpeedChanged()

Fonctions protégées

Qt3DInput::QKeyboardDevice *keyboardDevice() const
Qt3DInput::QMouseDevice *mouseDevice() const

Fonctions privées

virtual void moveCamera(const Qt3DExtras::QAbstractCameraController::InputState &state, float dt) = 0

Description détaillée

QAbstractCameraController configure et gère les entrées provenant du clavier, de la souris et d'autres périphériques. QAbstractCameraController est une classe abstraite et ne peut pas être instanciée en tant que telle. Elle fournit une interface standard pour les contrôleurs de caméra.

Documentation des propriétés

acceleration : float

Contient l'accélération actuelle du contrôleur de caméra.

Fonctions d'accès :

float acceleration() const
void setAcceleration(float acceleration)

Signal de notification :

void accelerationChanged(float acceleration)

camera : Qt3DRender::QCamera*

Contient la caméra actuellement contrôlée.

Fonctions d'accès :

Qt3DRender::QCamera *camera() const
void setCamera(Qt3DRender::QCamera *camera)

Signal de notification :

void cameraChanged()

deceleration : float

Contient la décélération actuelle du contrôleur de caméra.

Fonctions d'accès :

float deceleration() const
void setDeceleration(float deceleration)

Signal de notification :

void decelerationChanged(float deceleration)

linearSpeed : float

Contient la vitesse linéaire actuelle du contrôleur de caméra. La vitesse linéaire détermine la vitesse de déplacement de la caméra.

La valeur par défaut est 10.0.

Fonctions d'accès :

float linearSpeed() const
void setLinearSpeed(float linearSpeed)

Signal de notification :

void linearSpeedChanged()

lookSpeed : float

Contient la vitesse de rotation actuelle du contrôleur de caméra. La vitesse de rotation détermine la vitesse de rotation de la caméra en panoramique et en inclinaison.

La valeur par défaut est 180.0.

Fonctions d'accès :

float lookSpeed() const
void setLookSpeed(float lookSpeed)

Signal de notification :

void lookSpeedChanged()

Documentation des fonctions membres

[protected] Qt3DInput::QKeyboardDevice *QAbstractCameraController::keyboardDevice() const

Permet d'accéder au clavier.

[protected] Qt3DInput::QMouseDevice *QAbstractCameraController::mouseDevice() const

Permet d'accéder à la souris.

[pure virtual private] void QAbstractCameraController::moveCamera(const Qt3DExtras::QAbstractCameraController::InputState &state, float dt)

Les sous-classes doivent redéfinir cette méthode pour implémenter le mouvement de la caméra spécifique au contrôleur. ` state ` représente l'état d'entrée, et ` dt ` correspond au pas de temps.

Cette fonction est appelée chaque fois qu'une action d'image est déclenchée.

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