Sur cette page

Qt3DExtras::QAbstractCameraController Class

class Qt3DExtras::QAbstractCameraController

La classe QAbstractCameraController fournit des fonctionnalités de base pour les contrôleurs de caméra. Plus d'informations...

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

Qt3DExtras::QFirstPersonCameraController et Qt3DExtras::QOrbitCameraController

Statut : Déclassé

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 met en place et gère les entrées provenant du clavier, de la souris et d'autres périphériques. QAbstractCameraController est une classe abstraite qui ne peut pas être instanciée. Elle fournit une interface standard pour les contrôleurs de caméra.

Documentation sur les propriétés

acceleration : float

Indique 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*

Maintient 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

Indique la décélération actuelle du contrôleur de l'appareil photo.

Fonctions d'accès :

float deceleration() const
void setDeceleration(float deceleration)

Signal de notification :

void decelerationChanged(float deceleration)

linearSpeed : float

Indique la vitesse linéaire actuelle du contrôleur de l'appareil photo. La vitesse linéaire détermine la vitesse de déplacement de l'appareil photo.

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

Indique la vitesse d'observation actuelle du contrôleur de caméra. La vitesse d'observation détermine la vitesse de rotation du panoramique et de l'inclinaison de la caméra.

La valeur par défaut est 180.0.

Fonctions d'accès :

float lookSpeed() const
void setLookSpeed(float lookSpeed)

Signal Notificateur :

void lookSpeedChanged()

Member Function Documentation

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

Permet d'accéder au clavier.

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

Permet d'accéder au périphérique de la souris.

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

Les sous-classes doivent surcharger cette méthode pour mettre en œuvre le mouvement de caméra spécifique au contrôleur. state représente l'état d'entrée et dt le 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.