Camera QML Type
定义一个用于渲染场景的视点。更多...
此类型已弃用。我们强烈建议不要在新代码中使用它。
属性
- aspectRatio : real
- bottom : real
- exposure : real
- farPlane : real
- fieldOfView : real
- left : real
- lens : CameraLens
- nearPlane : real
- position : vector3d
- projectionMatrix : matrix4x4
- projectionType : enumeration
- right : real
- top : real
- transform : Transform
- upVector : vector3d
- viewCenter : vector3d
- viewVector : vector3d
方法
- void pan(real angle)
- void pan(real angle, vector3d axis)
- void panAboutViewCenter(real angle)
- void panAboutViewCenter(real angle, vector3d axis)
- quaternion panRotation(real angle)
- void roll(real angle)
- void rollAboutViewCenter(real angle)
- quaternion rollRotation(real angle)
- void rotate(quaternion q)
- void rotateAboutViewCenter(quaternion q)
- quaternion rotation(real angle, vector3d axis)
- void tilt(real angle)
- void tiltAboutViewCenter(real angle)
- quaternion tiltRotation(real angle)
- void translate(vector3d vLocal, enumeration option)
- void translateWorld(vector3d vWorld, enumeration option)
- void viewAll()
- void viewEntity(Entity entity)
- void viewSphere(vector3d center, real radius)
详细说明
物业文件
aspectRatio : real
保持相机的当前宽高比。
bottom : real
保存摄像机的当前底部坐标。
仅当projectionType 的值为CameraLens.OrthographicProjection时,此属性才有效。
exposure : real
保存相机的当前曝光值。
默认值为 0.0。
Qt 3D Extras 中的 MetalRoughMaterial 目前是唯一使用相机曝光的材质。负值会使材质变暗,正值会使其变亮。
自定义材质可能会采用不同的方式解释该值。
farPlane : real
保存摄像机的当前远平面。距离摄像机比 farPlane 更远的物体将不会被渲染。
fieldOfView : real
存储摄像机当前的垂直视场角(单位为度)。
该属性与aspectRatio 共同决定了相机可见的场景范围。从这个角度来看,您可以将其视为类似于选择广角镜头(水平视场角大)或长焦镜头(水平视场角小),具体取决于您希望捕捉多少场景内容。
fieldOfView 仅在projectionType 为 CameraLens.PerspectiveProjection 时才有效。
left : real
存储摄像机的当前左坐标。
仅当projectionType 为CameraLens.OrthographicProjection时,此属性才有效。
lens : CameraLens [read-only]
保存相机的 CameraLens 组件。
nearPlane : real
将当前摄像机保持在摄像机近平面附近。距离摄像机比 nearPlane 更近的物体将不会被渲染。
position : vector3d
保存相机相对于父实体的当前坐标位置。
projectionMatrix : matrix4x4
存储摄像机的当前投影矩阵。
projectionType : enumeration
存储相机投影的类型。默认值为 CameraLens.PerspectiveProjection。
- CameraLens.OrthographicProjection - 平行线在画面中仍保持平行。物体无论距离远近,在画面中看起来大小相同。
- CameraLens.PerspectiveProjection - 平行线在远处看似相交。物体离摄像机越远,看起来就越小。
- CameraLens.FrustumProjection
- CameraLens.CustomProjection
另请参阅 Qt3DRender::QCameraLens::ProjectionType 。
right : real
保存相机的当前坐标系。
仅当projectionType 为CameraLens.OrthographicProjection时,此属性才有效。
top : real
保存摄像机的当前顶点。
仅当projectionType 的值为CameraLens.OrthographicProjection时,此属性才有效。
transform : Transform [read-only]
包含相机的“变换”组件。
upVector : vector3d
存储相机当前的向上向量,该向量以父实体的坐标系为参考。
“up”向量指示了摄像机顶部所朝的方向。不妨想象一下拍照的情景:在调整好位置并将摄像机对准目标后,你可以将摄像机向左或向右旋转,从而获得竖拍、横拍(或倾斜!)的画面。“upVector”允许你控制此类运动。
viewCenter : vector3d
保存相机当前视图中心的坐标,该坐标系相对于父实体。
直观来说,viewCenter 即为摄像机所指向的位置。
viewVector : vector3d [read-only]
存储相机视向量,其坐标系相对于父实体。
该向量描述了从摄像机(position )到其目标(viewCenter )的位移。
方法文档
void pan(real angle)
将摄像机的平移角度调整为angle 度。
void pan(real angle, vector3d axis)
在axis 上,将摄像机围绕视图中心进行angle (单位:度)的平移调整。
void panAboutViewCenter(real angle)
将摄像机的平移角度围绕视图中心调整angle 度。
void panAboutViewCenter(real angle, vector3d axis)
在axis 上,将摄像机围绕视图中心以angle 为单位(以度为单位)调整平移角度。
quaternion panRotation(real angle)
返回相对于angle 计算出的平移旋转角度(单位为度),该角度用于调整摄像机的平移或Y轴上的左右旋转。
void roll(real angle)
将相机滚转角度调整为angle 度。
void rollAboutViewCenter(real angle)
将相机滚动轴相对于视图中心调整angle 度。
quaternion rollRotation(real angle)
返回相对于angle 计算出的滚转角度(单位为度),该角度用于调整摄像机在Z轴上的滚转或左右倾斜旋转。
void rotate(quaternion q)
在q 中,利用四元数旋转摄像机。
void rotateAboutViewCenter(quaternion q)
利用q 中的四元数,围绕视图中心旋转摄像机。
quaternion rotation(real angle, vector3d axis)
返回相对于angle 计算出的旋转角度(单位为度),以及所选的axis 的取值。
void tilt(real angle)
将摄像机的倾斜角度调整为angle 度。
void tiltAboutViewCenter(real angle)
将摄像机相对于视图中心的俯仰角调整为angle 度。
quaternion tiltRotation(real angle)
返回相对于angle 的计算出的俯仰旋转角度(单位为度),该角度用于调整摄像机的俯仰或X轴上的上下旋转。
void translate(vector3d vLocal, enumeration option)
将摄像机的位置及其视向量沿vLocal 在本地坐标系中平移。option 用于控制是否平移视图中心。
- Camera.TranslateViewCenter
- Camera.DontTranslateViewCenter
另请参阅 Qt3DRender::QCamera::CameraTranslationOption 。
void translateWorld(vector3d vWorld, enumeration option)
将摄像机的位置及其视图向量在世界坐标系中沿vWorld 方向平移。option 参数用于控制是否平移视图中心。
- Camera.TranslateViewCenter
- Camera.DontTranslateViewCenter
另请参阅 Qt3DRender::QCamera::CameraTranslationOption 。
void viewAll()
旋转并移动摄像机,使其viewCenter 位于场景边界体积的中心,且整个场景都能容纳在视口内。
注意:仅 当镜头处于透视投影或正交投影模式时才有效。
另请参阅 Qt3D.Render::Camera::projectionType 。
void viewEntity(Entity entity)
旋转并移动摄像机,使其viewCenter 位于实体的包围体中心,且整个entity 都能完全显示在视口内。
注意:仅 在镜头处于透视投影或正交投影模式时有效。
另请参阅 Qt3D.Render::Camera::projectionType 。
void viewSphere(vector3d center, real radius)
旋转并移动摄像机,使其viewCenter 为center ,且一个radius 的球体能完全显示在视口内。
注意:仅 在镜头处于透视投影或正交投影模式时有效。
© 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.