Sur cette page

Qt3DExtras::QOrbitCameraController Class

class Qt3DExtras::QOrbitCameraController

La classe `QOrbitCameraController` permet de contrôler la caméra de la scène le long d'une trajectoire orbitale. En savoir plus...

En-tête : #include <qorbitcameracontroller.h>
CMake : find_package(Qt6 REQUIRED COMPONENTS 3dextras)
target_link_libraries(mytarget PRIVATE Qt6::3dextras)
qmake : QT += 3dextras
Hérite de : Qt3DExtras::QAbstractCameraController
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

bool inversePan() const
bool inverseTilt() const
bool inverseXTranslate() const
bool inverseYTranslate() const
QVector3D upVector() const
float zoomInLimit() const
bool zoomTranslateViewCenter() const

Emplacements publics

void setInversePan(bool isInverse)
void setInverseTilt(bool isInverse)
void setInverseXTranslate(bool isInverse)
void setInverseYTranslate(bool isInverse)
void setUpVector(const QVector3D &upVector)
void setZoomInLimit(float zoomInLimit)
void setZoomTranslateViewCenter(bool isTranslate)

Signaux

void inversePanChanged(bool isInverse)
void inverseTiltChanged(bool isInverse)
void inverseXTranslateChanged(bool isInverse)
void inverseYTranslateChanged(bool isInverse)
void upVectorChanged(const QVector3D &upVector)
void zoomInLimitChanged()
void zoomTranslateViewCenterChanged(bool isTranslate)

Description détaillée

Les commandes sont les suivantes :

EntréesAction
Bouton gauche de la sourisLorsque le bouton gauche de la souris est enfoncé, le déplacement de la souris le long de l'axe x fait bouger la caméra vers la gauche et vers la droite, tandis que le déplacement le long de l'axe y la fait bouger vers le haut et vers le bas.
Bouton droit de la sourisLorsque le bouton droit de la souris est enfoncé, le déplacement de la souris le long de l'axe x effectue un panoramique autour du centre de la vue de la caméra, et le déplacement le long de l'axe y l'incline autour de ce même centre.
Boutons gauche et droit de la sourisLorsque les boutons gauche et droit de la souris sont enfoncés simultanément, le déplacement de la souris le long de l'axe y permet de zoomer ou de dézoomer sans modifier le centre de la vue.
Molette de la sourisPermet de zoomer et dézoomer sans modifier le centre de la vue.
Touches fléchéesDéplacent la caméra verticalement et horizontalement par rapport à la fenêtre de visualisation de la caméra.
Touches Page précédente et Page suivanteDéplacent la caméra vers l'avant et vers l'arrière.
Touche MajModifie le comportement des touches fléchées haut et bas pour effectuer un zoom avant et arrière sans déplacer le centre de la vue. Les autres touches de déplacement sont désactivées.
Touche AltModifie le comportement des touches fléchées pour faire pivoter et incliner la caméra autour du centre de la vue. Désactive les touches Page précédente et Page suivante.
Touche ÉchapDéplace la caméra de manière à ce que la scène entière soit visible dans la fenêtre de visualisation.

Documentation des propriétés

inversePan : bool

Indique si le panoramique est inversé.

Lorsque cette option est activée, les mouvements de panoramique horizontaux font pivoter la caméra autour du centre de la vue dans le sens inverse.

Fonctions d'accès :

bool inversePan() const
void setInversePan(bool isInverse)

Signal de notification :

void inversePanChanged(bool isInverse)

inverseTilt : bool

Indique si l'inclinaison est inversée.

Lorsque cette option est activée, les mouvements d'inclinaison verticaux font pivoter la caméra autour du centre de la vue dans le sens inverse.

Fonctions d'accès :

bool inverseTilt() const
void setInverseTilt(bool isInverse)

Signal de notification :

void inverseTiltChanged(bool isInverse)

inverseXTranslate : bool

Indique si la translation horizontale est inversée.

Lorsque cette option est activée, les mouvements horizontaux de la souris et les commandes font se déplacer la caméra dans la direction opposée.

Fonctions d'accès :

bool inverseXTranslate() const
void setInverseXTranslate(bool isInverse)

Signal de notification :

void inverseXTranslateChanged(bool isInverse)

inverseYTranslate : bool

Indique si la translation verticale est inversée.

Lorsque cette option est activée, les mouvements verticaux de la souris et les entrées déplacent la caméra dans la direction opposée.

Fonctions d'accès :

bool inverseYTranslate() const
void setInverseYTranslate(bool isInverse)

Signal de notification :

void inverseYTranslateChanged(bool isInverse)

upVector : QVector3D

Contient le vecteur « up » pour la rotation orbitale de la caméra.

Le vecteur « up » définit l'axe vertical autour duquel la caméra effectue sa rotation orbitale. La valeur par défaut est (0,0 ; 1,0 ; 0,0).

Fonctions d'accès :

QVector3D upVector() const
void setUpVector(const QVector3D &upVector)

Signal de notification :

void upVectorChanged(const QVector3D &upVector)

zoomInLimit : float

Stocke la limite actuelle de zoom avant. La limite de zoom avant détermine jusqu'à quelle distance du centre de la vue la caméra peut être rapprochée.

Fonctions d'accès :

float zoomInLimit() const
void setZoomInLimit(float zoomInLimit)

Signal de notification :

void zoomInLimitChanged()

zoomTranslateViewCenter : bool

Indique si le centre de la vue est déplacé lors des opérations de zoom.

Lorsque cette option est activée, le zoom déplace le centre de la vue. Lorsqu'elle est désactivée, seule la position de la caméra change lors des opérations de zoom. La valeur par défaut est true.

Fonctions d'accès :

bool zoomTranslateViewCenter() const
void setZoomTranslateViewCenter(bool isTranslate)

Signal de notification :

void zoomTranslateViewCenterChanged(bool isTranslate)

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