QCamera#

The QCamera class defines a view point through which the scene will be rendered. More

Inheritance diagram of PySide6.Qt3DRender.Qt3DRender.QCamera

Synopsis#

Properties#

Functions#

Slots#

Signals#

Note

This documentation may contain snippets that were automatically translated from C++ to Python. We always welcome contributions to the snippet translation. If you see an issue with the translation, you can also let us know by creating a ticket on https:/bugreports.qt.io/projects/PYSIDE

Detailed Description#

class PySide6.Qt3DRender.Qt3DRender.QCamera([parent=None])#
Parameters:

parentPySide6.Qt3DCore.Qt3DCore.QNode

Creates a new QCamera instance with the specified parent.

Note

Properties can be used directly when from __feature__ import true_property is used or via accessor functions otherwise.

property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.aspectRatio: float#

Holds the current aspect ratio.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.bottom: float#

Holds the current bottom of the camera.

This property is only relevant when projectionType is OrthographicProjection .

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.exposure: float#

Holds the current exposure of the camera.

The default value is 0.0.

The MetalRoughMaterial in Qt 3D Extras is currently the only provided material that makes use of camera exposure. Negative values will cause the material to be darker, and positive values will cause it to be lighter.

Custom materials may choose to interpret the value differently.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.farPlane: float#

Holds the current camera far plane. Objects that are farther from the camera than the farPlane will not be rendered.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.fieldOfView: float#

Holds the current vertical field of view in degrees.

Along with aspectRatio , this property determines how much of the scene is visible to the camera. In that respect you might think of it as analogous to choosing a wide angle (wide horizontal field of view) or telephoto (narrow horizontal field of view) lens depending on how much of a scene you want to capture.

fieldOfView is only relevant when projectionType is PerspectiveProjection .

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.left: float#

Holds the current left of the camera.

This property is only relevant when projectionType is OrthographicProjection .

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.lens: PySide6.Qt3DRender.Qt3DRender.QCameraLens#

Holds the QCameraLens component of the camera.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.nearPlane: float#

Holds the current camera near plane. Objects that are closer to the camera than the nearPlane will not be rendered.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.position: PySide6.QtGui.QVector3D#

Holds the camera’s position in coordinates relative to the parent entity.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.projectionMatrix: PySide6.QtGui.QMatrix4x4#

Holds the current projection matrix of the camera.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.projectionType: ProjectionType#

Holds the type of the camera projection. The default value is PerspectiveProjection .

  • OrthographicProjection - Parallel lines appear parallel. Objects appear the same size regardless of distance.

  • PerspectiveProjection - Parallel lines appear to meet in the distance. Objects appear to shrink the farther they are from the camera.

  • FrustumProjection

  • CustomProjection

See also

ProjectionType

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.right: float#

Holds the current right of the camera.

This property is only relevant when projectionType is OrthographicProjection .

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.top: float#

Holds the current top of the camera.

This property is only relevant when projectionType is OrthographicProjection .

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.transform: PySide6.Qt3DCore.Qt3DCore.QTransform#

Holds the QTransform component of the camera.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.upVector: PySide6.QtGui.QVector3D#

Holds the camera’s up vector in coordinates relative to the parent entity.

The up vector indicates which direction the top of the camera is facing. Think of taking a picture: after positioning yourself and pointing the camera at your target, you might rotate the camera left or right, giving you a portrait or landscape (or angled!) shot. upVector allows you to control this type of movement.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.viewCenter: PySide6.QtGui.QVector3D#

Holds the camera’s view center in coordinates relative to the parent entity.

Intuitively, the viewCenter is the location the camera is pointing at.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.viewMatrix: PySide6.QtGui.QMatrix4x4#

Holds the camera’s view matrix in coordinates relative to the parent entity.

Access functions:
property PᅟySide6.Qt3DRender.Qt3DRender.QCamera.viewVector: PySide6.QtGui.QVector3D#

Holds the camera’s view vector in coordinates relative to the parent entity.

This vector decribes the displacement from the camera ( position ) to its target ( viewCenter ).

Access functions:
PySide6.Qt3DRender.Qt3DRender.QCamera.CameraTranslationOption#

This enum specifies how camera view center is translated

Constant

Description

Qt3DRender.QCamera.TranslateViewCenter

Translate the view center causing the view direction to remain the same

Qt3DRender.QCamera.DontTranslateViewCenter

Don’t translate the view center causing the view direction to change

PySide6.Qt3DRender.Qt3DRender.QCamera.aspectRatio()#
Return type:

float

See also

setAspectRatio()

Getter of property aspectRatio .

PySide6.Qt3DRender.Qt3DRender.QCamera.aspectRatioChanged(aspectRatio)#
Parameters:

aspectRatio – float

Notification signal of property aspectRatio .

PySide6.Qt3DRender.Qt3DRender.QCamera.bottom()#
Return type:

float

See also

setBottom()

Getter of property bottom .

PySide6.Qt3DRender.Qt3DRender.QCamera.bottomChanged(bottom)#
Parameters:

bottom – float

Notification signal of property bottom .

PySide6.Qt3DRender.Qt3DRender.QCamera.exposure()#
Return type:

float

See also

setExposure()

Getter of property exposure .

PySide6.Qt3DRender.Qt3DRender.QCamera.exposureChanged(exposure)#
Parameters:

exposure – float

Notification signal of property exposure .

PySide6.Qt3DRender.Qt3DRender.QCamera.farPlane()#
Return type:

float

See also

setFarPlane()

Getter of property farPlane .

PySide6.Qt3DRender.Qt3DRender.QCamera.farPlaneChanged(farPlane)#
Parameters:

farPlane – float

Notification signal of property farPlane .

PySide6.Qt3DRender.Qt3DRender.QCamera.fieldOfView()#
Return type:

float

See also

setFieldOfView()

Getter of property fieldOfView .

PySide6.Qt3DRender.Qt3DRender.QCamera.fieldOfViewChanged(fieldOfView)#
Parameters:

fieldOfView – float

Notification signal of property fieldOfView .

PySide6.Qt3DRender.Qt3DRender.QCamera.left()#
Return type:

float

See also

setLeft()

Getter of property left .

PySide6.Qt3DRender.Qt3DRender.QCamera.leftChanged(left)#
Parameters:

left – float

Notification signal of property left .

PySide6.Qt3DRender.Qt3DRender.QCamera.lens()#
Return type:

PySide6.Qt3DRender.Qt3DRender.QCameraLens

Returns the current lens.

Getter of property lens .

PySide6.Qt3DRender.Qt3DRender.QCamera.nearPlane()#
Return type:

float

See also

setNearPlane()

Getter of property nearPlane .

PySide6.Qt3DRender.Qt3DRender.QCamera.nearPlaneChanged(nearPlane)#
Parameters:

nearPlane – float

Notification signal of property nearPlane .

PySide6.Qt3DRender.Qt3DRender.QCamera.pan(angle)#
Parameters:

angle – float

Adjusts the pan angle of the camera by angle in degrees.

PySide6.Qt3DRender.Qt3DRender.QCamera.pan(angle, axis)
Parameters:

Adjusts the pan angle of the camera by angle in degrees on a chosen axis.

PySide6.Qt3DRender.Qt3DRender.QCamera.panAboutViewCenter(angle, axis)#
Parameters:

Adjusts the camera pan about view center by angle in degrees on axis.

PySide6.Qt3DRender.Qt3DRender.QCamera.panAboutViewCenter(angle)
Parameters:

angle – float

Adjusts the camera pan about view center by angle in degrees.

PySide6.Qt3DRender.Qt3DRender.QCamera.panRotation(angle)#
Parameters:

angle – float

Return type:

PySide6.QtGui.QQuaternion

Returns the calculated pan rotation in relation to the angle in degrees taken in to adjust the camera’s pan or left/right rotation on the Y axis.

PySide6.Qt3DRender.Qt3DRender.QCamera.position()#
Return type:

PySide6.QtGui.QVector3D

See also

setPosition()

Getter of property position .

PySide6.Qt3DRender.Qt3DRender.QCamera.positionChanged(position)#
Parameters:

positionPySide6.QtGui.QVector3D

Notification signal of property position .

PySide6.Qt3DRender.Qt3DRender.QCamera.projectionMatrix()#
Return type:

PySide6.QtGui.QMatrix4x4

See also

setProjectionMatrix()

Getter of property projectionMatrix .

PySide6.Qt3DRender.Qt3DRender.QCamera.projectionMatrixChanged(projectionMatrix)#
Parameters:

projectionMatrixPySide6.QtGui.QMatrix4x4

Notification signal of property projectionMatrix .

PySide6.Qt3DRender.Qt3DRender.QCamera.projectionType()#
Return type:

ProjectionType

See also

setProjectionType()

Getter of property projectionType .

PySide6.Qt3DRender.Qt3DRender.QCamera.projectionTypeChanged(projectionType)#
Parameters:

projectionTypeProjectionType

Notification signal of property projectionType .

PySide6.Qt3DRender.Qt3DRender.QCamera.right()#
Return type:

float

See also

setRight()

Getter of property right .

PySide6.Qt3DRender.Qt3DRender.QCamera.rightChanged(right)#
Parameters:

right – float

Notification signal of property right .

PySide6.Qt3DRender.Qt3DRender.QCamera.roll(angle)#
Parameters:

angle – float

Adjusts the camera roll by angle in degrees.

PySide6.Qt3DRender.Qt3DRender.QCamera.rollAboutViewCenter(angle)#
Parameters:

angle – float

Adjusts the camera roll about view center by angle in degrees.

PySide6.Qt3DRender.Qt3DRender.QCamera.rollRotation(angle)#
Parameters:

angle – float

Return type:

PySide6.QtGui.QQuaternion

Returns the calculated roll rotation in relation to the angle in degrees taken in to adjust the camera’s roll or lean left/right rotation on the Z axis.

PySide6.Qt3DRender.Qt3DRender.QCamera.rotate(q)#
Parameters:

qPySide6.QtGui.QQuaternion

Rotates the camera with the use of a Quaternion in q.

PySide6.Qt3DRender.Qt3DRender.QCamera.rotateAboutViewCenter(q)#
Parameters:

qPySide6.QtGui.QQuaternion

Rotates the camera about the view center with the use of a Quaternion in q.

PySide6.Qt3DRender.Qt3DRender.QCamera.rotation(angle, axis)#
Parameters:
Return type:

PySide6.QtGui.QQuaternion

Returns the calculated rotation in relation to the angle in degrees and chosen axis taken in.

PySide6.Qt3DRender.Qt3DRender.QCamera.setAspectRatio(aspectRatio)#
Parameters:

aspectRatio – float

Sets the camera’s aspect ratio to aspectRatio.

See also

aspectRatio()

Setter of property aspectRatio .

PySide6.Qt3DRender.Qt3DRender.QCamera.setBottom(bottom)#
Parameters:

bottom – float

Sets the bottom of the camera to bottom.

See also

bottom()

Setter of property bottom .

PySide6.Qt3DRender.Qt3DRender.QCamera.setExposure(exposure)#
Parameters:

exposure – float

Sets the camera’s exposure to exposure.

See also

exposure()

Setter of property exposure .

PySide6.Qt3DRender.Qt3DRender.QCamera.setFarPlane(farPlane)#
Parameters:

farPlane – float

Sets the camera’s far plane to farPlane

See also

farPlane()

Setter of property farPlane .

PySide6.Qt3DRender.Qt3DRender.QCamera.setFieldOfView(fieldOfView)#
Parameters:

fieldOfView – float

Sets the camera’s field of view to fieldOfView in degrees.

See also

fieldOfView()

Setter of property fieldOfView .

PySide6.Qt3DRender.Qt3DRender.QCamera.setLeft(left)#
Parameters:

left – float

Sets the left of the camera to left.

See also

left()

Setter of property left .

PySide6.Qt3DRender.Qt3DRender.QCamera.setNearPlane(nearPlane)#
Parameters:

nearPlane – float

Sets the camera’s near plane to nearPlane.

See also

nearPlane()

Setter of property nearPlane .

PySide6.Qt3DRender.Qt3DRender.QCamera.setPosition(position)#
Parameters:

positionPySide6.QtGui.QVector3D

Sets the camera’s position in 3D space to position.

See also

position()

Setter of property position .

PySide6.Qt3DRender.Qt3DRender.QCamera.setProjectionMatrix(projectionMatrix)#
Parameters:

projectionMatrixPySide6.QtGui.QMatrix4x4

Sets the camera’s projection matrix to projectionMatrix.

See also

projectionMatrix()

Setter of property projectionMatrix .

PySide6.Qt3DRender.Qt3DRender.QCamera.setProjectionType(type)#
Parameters:

typeProjectionType

Sets the camera’s projection type to type.

See also

projectionType()

Setter of property projectionType .

PySide6.Qt3DRender.Qt3DRender.QCamera.setRight(right)#
Parameters:

right – float

Sets the right of the camera to right.

See also

right()

Setter of property right .

PySide6.Qt3DRender.Qt3DRender.QCamera.setTop(top)#
Parameters:

top – float

Sets the top of the camera to top.

See also

top()

Setter of property top .

PySide6.Qt3DRender.Qt3DRender.QCamera.setUpVector(upVector)#
Parameters:

upVectorPySide6.QtGui.QVector3D

Sets the camera’s up vector to upVector.

See also

upVector()

Setter of property upVector .

PySide6.Qt3DRender.Qt3DRender.QCamera.setViewCenter(viewCenter)#
Parameters:

viewCenterPySide6.QtGui.QVector3D

Sets the camera’s view center to viewCenter.

See also

viewCenter()

Setter of property viewCenter .

PySide6.Qt3DRender.Qt3DRender.QCamera.tilt(angle)#
Parameters:

angle – float

Adjusts the tilt angle of the camera by angle in degrees.

PySide6.Qt3DRender.Qt3DRender.QCamera.tiltAboutViewCenter(angle)#
Parameters:

angle – float

Adjusts the camera tilt about view center by angle in degrees.

PySide6.Qt3DRender.Qt3DRender.QCamera.tiltRotation(angle)#
Parameters:

angle – float

Return type:

PySide6.QtGui.QQuaternion

Returns the calculated tilt rotation in relation to the angle in degrees taken in to adjust the camera’s tilt or up/down rotation on the X axis.

PySide6.Qt3DRender.Qt3DRender.QCamera.top()#
Return type:

float

See also

setTop()

Getter of property top .

PySide6.Qt3DRender.Qt3DRender.QCamera.topChanged(top)#
Parameters:

top – float

Notification signal of property top .

PySide6.Qt3DRender.Qt3DRender.QCamera.transform()#
Return type:

PySide6.Qt3DCore.Qt3DCore.QTransform

Returns the camera’s position via transform.

Getter of property transform .

PySide6.Qt3DRender.Qt3DRender.QCamera.translate(vLocal[, option=Qt3DRender.QCamera.CameraTranslationOption.TranslateViewCenter])#
Parameters:

Translates the camera’s position and its view vector by vLocal in local coordinates. The option allows for toggling whether the view center should be translated.

PySide6.Qt3DRender.Qt3DRender.QCamera.translateWorld(vWorld[, option=Qt3DRender.QCamera.CameraTranslationOption.TranslateViewCenter])#
Parameters:

Translates the camera’s position and its view vector by vWorld in world coordinates. The option allows for toggling whether the view center should be translated.

PySide6.Qt3DRender.Qt3DRender.QCamera.upVector()#
Return type:

PySide6.QtGui.QVector3D

See also

setUpVector()

Getter of property upVector .

PySide6.Qt3DRender.Qt3DRender.QCamera.upVectorChanged(upVector)#
Parameters:

upVectorPySide6.QtGui.QVector3D

Notification signal of property upVector .

PySide6.Qt3DRender.Qt3DRender.QCamera.viewAll()#

Rotates and moves the camera so that it’s viewCenter is the center of the scene’s bounding volume and the entire scene fits in the view port.

Note

Only works if the lens is in perspective or orthographic projection mode.

PySide6.Qt3DRender.Qt3DRender.QCamera.viewCenter()#
Return type:

PySide6.QtGui.QVector3D

See also

setViewCenter()

Getter of property viewCenter .

PySide6.Qt3DRender.Qt3DRender.QCamera.viewCenterChanged(viewCenter)#
Parameters:

viewCenterPySide6.QtGui.QVector3D

Notification signal of property viewCenter .

PySide6.Qt3DRender.Qt3DRender.QCamera.viewEntity(entity)#
Parameters:

entityPySide6.Qt3DCore.Qt3DCore.QEntity

Rotates and moves the camera so that it’s viewCenter is the center of the entity's bounding volume and the entire entity fits in the view port.

Note

Only works if the lens is in perspective or orthographic projection mode.

PySide6.Qt3DRender.Qt3DRender.QCamera.viewMatrix()#
Return type:

PySide6.QtGui.QMatrix4x4

Getter of property viewMatrix .

PySide6.Qt3DRender.Qt3DRender.QCamera.viewMatrixChanged()#

Notification signal of property viewMatrix .

PySide6.Qt3DRender.Qt3DRender.QCamera.viewSphere(center, radius)#
Parameters:

Rotates and moves the camera so that it’s viewCenter is center and a sphere of radius fits in the view port.

Note

Only works if the lens is in perspective or orthographic projection mode.

PySide6.Qt3DRender.Qt3DRender.QCamera.viewVector()#
Return type:

PySide6.QtGui.QVector3D

Getter of property viewVector .

PySide6.Qt3DRender.Qt3DRender.QCamera.viewVectorChanged(viewVector)#
Parameters:

viewVectorPySide6.QtGui.QVector3D

Notification signal of property viewVector .