C语言
Q3DSViewerSettings 类
Qt 3D Studio 演示查看器设置。 更多信息...
头部 | #include <Q3DSViewerSettings> |
自 | Qt 3D Studio 2.0 |
由 | ViewerSettings |
继承自 | QObject |
此类是在 Qt 3D Studio 2.0 中引入的。
公共类型
枚举 | ScaleMode { ScaleModeFit, ScaleModeFill, ScaleModeCenter } |
枚举 | ShadeMode { ShadeModeShaded, ShadeModeShadedWireframe } |
枚举 | StereoMode { StereoModeMono, StereoModeTopBottom, StereoModeLeftRight, StereoModeAnaglyphRedCyan, StereoModeAnaglyphGreenMagenta } |
属性
|
|
公共函数
bool | isShowRenderStats() const |
void | load(const QString &group, const QString &organization = QString(), const QString &application = QString()) |
QColor | matteColor() const |
bool | matteEnabled() const |
void | save(const QString &group, const QString &organization = QString(), const QString &application = QString()) |
Q3DSViewerSettings::ScaleMode | scaleMode() const |
int | skipFramesInterval() const |
double | stereoEyeSeparation() const |
Q3DSViewerSettings::StereoMode | stereoMode() const |
bool | stereoProgressiveEnabled() const |
公共槽
void | setMatteColor(const QColor &color) |
void | setMatteEnabled(bool enabled) |
void | setScaleMode(Q3DSViewerSettings::ScaleMode mode) |
void | setShowRenderStats(bool show) |
void | setSkipFramesInterval(int interval) |
void | setStereoEyeSeparation(double separation) |
void | setStereoMode(Q3DSViewerSettings::StereoMode mode) |
void | setStereoProgressiveEnabled(bool enabled) |
信号
void | matteColorChanged(const QColor &color) |
void | matteEnabledChanged(bool enabled) |
void | scaleModeChanged(Q3DSViewerSettings::ScaleMode 模式) |
void | shadeModeChanged(Q3DSViewerSettings::ShadeMode 模式) |
void | showRenderStatsChanged(bool 显示) |
void | skipFramesIntervalChanged(int 间隔) |
void | stereoEyeSeparationChanged(double 分离度) |
void | stereoModeChanged(Q3DSViewerSettings::StereoMode 模式) |
void | stereoProgressiveEnabledChanged(bool 启用) |
详细描述
Q3DSViewerSettings提供属性以定义独立于演示的查看器设置。
注意:在使用C++ API时,不应该直接实例化此类。 Q3DSSurfaceViewer隐式创建Q3DSViewerSettings实例。这可以通过Q3DSSurfaceViewer::settings()查询。
成员类型文档
枚举 Q3DSViewerSettings::ScaleMode
此枚举指定可能的比例模式。
常量 | 值 | 描述 |
---|---|---|
Q3DSViewerSettings::ScaleModeFit | 0 | 将演示比例适合输出区域。 |
Q3DSViewerSettings::ScaleModeFill | 1 | 将演示比例完全填充输出区域。这是默认值。 |
Q3DSViewerSettings::ScaleModeCenter | 2 | 将演示居中在输出区域内,不进行缩放。 |
枚举 Q3DSViewerSettings::ShadeMode
此枚举指定可能的着色模式。
常量 | 值 | 描述 |
---|---|---|
Q3DSViewerSettings::ShadeModeShaded | 0 | 以正常方式着色表面。这是默认值。 |
Q3DSViewerSettings::ShadeModeShadedWireframe | 1 | 在着色表面之上渲染线框。 |
枚举 Q3DSViewerSettings::StereoMode
此枚举指定可能的立体观看模式。
常量 | 值 | 描述 |
---|---|---|
Q3DSViewerSettings::StereoModeMono | 0 | 这是默认值。 |
Q3DSViewerSettings::StereoModeTopBottom | 1 | |
Q3DSViewerSettings::StereoModeLeftRight | 2 | |
Q3DSViewerSettings::StereoModeAnaglyphRedCyan | 3 | |
Q3DSViewerSettings::StereoModeAnaglyphGreenMagenta | 4 |
此枚举在Qt 3D Studio 2.5中引入或修改。
属性文档
matteColor : QColor
指定亚光颜色。
访问函数
QColor | matteColor() const |
void | setMatteColor(const QColor &颜色) |
通知信号
void | matteColorChanged(const QColor &颜色) |
matteEnabled : bool
指定演示周围(当scaleMode设置为ScaleModeCenter或ScaleModeFit时)的空区域是否应填充为自定义颜色。
默认值是false
。
访问函数
bool | matteEnabled() const |
void | setMatteEnabled(bool 启用) |
通知信号
void | matteEnabledChanged(bool 启用) |
另请参阅:matteColor。
scaleMode : ScaleMode
指定缩放模式。
常量 | 描述 |
---|---|
ScaleModeFit | 将演示比例适合输出区域。 |
ScaleModeFill | 将演示比例完整填充输出区域。 |
ScaleModeCenter | 将演示居中在输出区域内,不进行缩放。 |
访问函数
Q3DSViewerSettings::ScaleMode | scaleMode() const |
void | setScaleMode(Q3DSViewerSettings::ScaleMode 模式) |
通知信号
void | scaleModeChanged(Q3DSViewerSettings::ScaleMode 模式) |
showRenderStats : bool
当此属性为 true
时,简单的配置视图将在场景中显示在3D内容上方。
注意:此功能可以在构建时禁用,在这种情况下,此属性将不起作用。
默认值为 false
。
访问函数
bool | isShowRenderStats() const |
void | setShowRenderStats(bool 显示) |
通知信号
void | showRenderStatsChanged(bool 显示) |
skipFramesInterval : int
设置跳过帧渲染的间隔。默认值为0,表示渲染所有帧。将此设置为1则每两个帧渲染一次(在60Hz屏幕上的30fps),2则每三个帧渲染一次(在60Hz屏幕上的20fps)等。此属性允许降低3D渲染速度,同时保持QtQuick UI渲染不变,降低CPU/GPU使用率。
此属性自Qt 3D Studio 2.7开始引入。
访问函数
int | skipFramesInterval() const |
void | setSkipFramesInterval(int 间隔) |
通知信号
void | skipFramesIntervalChanged(int 间隔) |
stereoEyeSeparation : double
指定立体渲染的视眼(摄像机)分离。值为左右视眼在x坐标上远离中心的位置。更大的分离值会增强3D效果。最佳值取决于观看的演示。
仅在立体模式设置为非默认值 StereoModeMono
时有效。
此属性自Qt 3D Studio 2.5开始引入。
访问函数
double | stereoEyeSeparation() const |
void | setStereoEyeSeparation(double 分离) |
通知信号
void | stereoEyeSeparationChanged(double 分离) |
stereoMode : 立体模式
指定立体模式。默认值 是
立体模式单色,此时视图正常渲染,适用于2D显示。其他可用的模式针对不同的3D立体渲染类型。
常量 | 描述 |
---|---|
立体模式单色 | 以单色模式正常渲染演示。 |
立体模式上下 | 以立体模式上下模式渲染演示。 |
立体模式左右 | 以立体模式左右模式渲染演示。 |
立体模式红绿 | 以红绿模式渲染演示。 |
立体模式绿洋红色 | 以绿洋红色模式渲染演示。 |
默认值是 立体模式单色
。
此属性自Qt 3D Studio 2.5开始引入。
访问函数
Q3DSViewerSettings::StereoMode | stereoMode() const |
void | setStereoMode(Q3DSViewerSettings::立体模式 模式) |
通知信号
void | stereoModeChanged(Q3DSViewerSettings::立体模式 模式) |
stereoProgressiveEnabled : bool
在立体模式下启用渐进式渲染。在此模式下,每帧仅渲染一只眼睛。奇数帧渲染左眼,偶数帧渲染右眼。这会将最大动画帧率减半(例如,在60Hz屏幕上的30fps),同时降低CPU/GPU使用率。
注意:此属性仅在立体模式设置为 立体模式上下
或 立体模式左右
时才有效。
此属性自Qt 3D Studio 2.7开始引入。
访问函数
bool | stereoProgressiveEnabled() const |
void | setStereoProgressiveEnabled(bool 启用) |
通知信号
void | stereoProgressiveEnabledChanged(bool 启用) |
成员函数文档
[信号]
void Q3DSViewerSettings::shadeModeChanged(Q3DSViewerSettings::ShadeMode 模式)
当改变阴影 模式 时发出。
void Q3DSViewerSettings::load(const QString &group, const QString &organization = QString(), const QString &application = QString())
使用 group、organization 和 application 加载先前保存的查看器 设置。
注意:此函数可以通过元对象系统从 QML 调用。见 Q_INVOKABLE。
void Q3DSViewerSettings::save(const QString &group, const QString &organization = QString(), const QString &application = QString())
使用 group、organization 和 application 持久化保存查看器 设置。
注意:此函数可以通过元对象系统从 QML 调用。见 Q_INVOKABLE。
在某些 Qt 许可下可用。
了解更多信息。