QAbstractCameraController Class

(Qt3DExtras::QAbstractCameraController)

The QAbstractCameraController class provides basic functionality for camera controllers. More...

Header: #include <QAbstractCameraController>
qmake: QT += 3dextras
Since: Qt 5.10
Inherits: Qt3DCore::QEntity
Inherited By:

Qt3DExtras::QFirstPersonCameraController and Qt3DExtras::QOrbitCameraController

Public Types

class InputState

Properties

Public Functions

virtual ~QAbstractCameraController()
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)

Signals

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

Static Public Members

const QMetaObject staticMetaObject
  • 9 static public members inherited from QObject

Protected Functions

QAbstractCameraController(Qt3DCore::QNode *parent = nullptr)
Qt3DInput::QKeyboardDevice *keyboardDevice() const
Qt3DInput::QMouseDevice *mouseDevice() const

Additional Inherited Members

Detailed Description

The QAbstractCameraController class provides basic functionality for camera controllers.

QAbstractCameraController sets up and handles input from keyboard, mouse, and other devices. QAbstractCameraController is an abstract class and cannot itself be instantiated. It provides a standard interface for camera controllers.

Derived classes need only implement the frameActionTriggered() method to move the camera.

Property Documentation

acceleration : float

Holds the current acceleration of the camera controller.

Access functions:

float acceleration() const
void setAcceleration(float acceleration)

Notifier signal:

void accelerationChanged(float acceleration)

camera : Qt3DRender::QCamera*

Holds the currently controlled camera.

Access functions:

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

Notifier signal:

void cameraChanged()

deceleration : float

Holds the current deceleration of the camera controller.

Access functions:

float deceleration() const
void setDeceleration(float deceleration)

Notifier signal:

void decelerationChanged(float deceleration)

linearSpeed : float

Holds the current linear speed of the camera controller. Linear speed determines the movement speed of the camera.

The default is 10.0.

Access functions:

float linearSpeed() const
void setLinearSpeed(float linearSpeed)

Notifier signal:

void linearSpeedChanged()

lookSpeed : float

Holds the current look speed of the camera controller. The look speed determines the turn rate of the camera pan and tilt.

The default is 180.0.

Access functions:

float lookSpeed() const
void setLookSpeed(float lookSpeed)

Notifier signal:

void lookSpeedChanged()

Member Function Documentation

[protected] QAbstractCameraController::QAbstractCameraController(Qt3DCore::QNode *parent = nullptr)

Default constructs an instance of QAbstractCameraController.

[virtual] QAbstractCameraController::~QAbstractCameraController()

Destroys the instance of QAbstractCameraController. The destructor is virtual.

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

Provides access to the keyboard device.

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

Provides access to the mouse device.

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