C

Q3DSViewerSettings Class

Qt 3D Studio presentation viewer settings. More...

Header: #include <Q3DSViewerSettings>
Since: Qt 3D Studio 2.0
Instantiated By: ViewerSettings
Inherits: QObject

This class was introduced in Qt 3D Studio 2.0.

Public Types

enum ScaleMode { ScaleModeFit, ScaleModeFill, ScaleModeCenter }
enum ShadeMode { ShadeModeShaded, ShadeModeShadedWireframe }
enum StereoMode { StereoModeMono, StereoModeTopBottom, StereoModeLeftRight, StereoModeAnaglyphRedCyan, StereoModeAnaglyphGreenMagenta }

Properties

Public Functions

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

Public Slots

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)

Signals

void matteColorChanged(const QColor &color)
void matteEnabledChanged(bool enabled)
void scaleModeChanged(Q3DSViewerSettings::ScaleMode mode)
void shadeModeChanged(Q3DSViewerSettings::ShadeMode mode)
void showRenderStatsChanged(bool show)
void skipFramesIntervalChanged(int interval)
void stereoEyeSeparationChanged(double separation)
void stereoModeChanged(Q3DSViewerSettings::StereoMode mode)
void stereoProgressiveEnabledChanged(bool enabled)

Detailed Description

Q3DSViewerSettings provides properties to define presentation-independent viewer settings.

Note: This class should not be instantiated directly when working with the C++ APIs. Q3DSSurfaceViewer creates a Q3DSViewerSettings instance implicitly. This can be queried via Q3DSSurfaceViewer::settings().

Member Type Documentation

enum Q3DSViewerSettings::ScaleMode

This enumeration specifies the possible scaling modes.

ConstantValueDescription
Q3DSViewerSettings::ScaleModeFit0Scales the presentation to fit the output area.
Q3DSViewerSettings::ScaleModeFill1Scales the presentation to completely fill the output area. This is the default.
Q3DSViewerSettings::ScaleModeCenter2Centers the presentation in the output area without scaling it.

enum Q3DSViewerSettings::ShadeMode

This enumeration specifies the possible shading modes.

ConstantValueDescription
Q3DSViewerSettings::ShadeModeShaded0Shades the surfaces normally. This is the default.
Q3DSViewerSettings::ShadeModeShadedWireframe1Renders wireframe on top of shaded surfaces.

enum Q3DSViewerSettings::StereoMode

This enumeration specifies the possible stereoscopic viewing modes.

ConstantValueDescription
Q3DSViewerSettings::StereoModeMono0This is the default value.
Q3DSViewerSettings::StereoModeTopBottom1 
Q3DSViewerSettings::StereoModeLeftRight2 
Q3DSViewerSettings::StereoModeAnaglyphRedCyan3 
Q3DSViewerSettings::StereoModeAnaglyphGreenMagenta4 

This enum was introduced or modified in Qt 3D Studio 2.5.

Property Documentation

matteColor : QColor

Specifies the matte color.

Access functions:

QColor matteColor() const
void setMatteColor(const QColor &color)

Notifier signal:

void matteColorChanged(const QColor &color)

matteEnabled : bool

Specifies if the empty area around the presentation (applicable when scaleMode is set to ScaleModeCenter or ScaleModeFit) should be filled with a custom color.

The default value is false.

Access functions:

bool matteEnabled() const
void setMatteEnabled(bool enabled)

Notifier signal:

void matteEnabledChanged(bool enabled)

See also matteColor.

scaleMode : ScaleMode

Specifies the scaling mode.

ConstantDescription
ScaleModeFitScales the presentation to fit the output area.
ScaleModeFillScales the presentation to completely fill the output area.
ScaleModeCenterCenters the presentation in the output area without scaling it.

Access functions:

Q3DSViewerSettings::ScaleMode scaleMode() const
void setScaleMode(Q3DSViewerSettings::ScaleMode mode)

Notifier signal:

void scaleModeChanged(Q3DSViewerSettings::ScaleMode mode)

showRenderStats : bool

When this property is true, the simple profile view is displayed in-scene, on top of the 3D content.

Note: This feature can be disabled at build time, in which case this property has no effect.

Default value is false.

Access functions:

bool isShowRenderStats() const
void setShowRenderStats(bool show)

Notifier signal:

void showRenderStatsChanged(bool show)

skipFramesInterval : int

Sets interval for skipping frame rendering. The default value is 0 meaning all frames are rendered. Setting this to 1 renders every other frame (30fps on 60Hz screen), 2 every third frame (20fps on 60Hz screen) etc. This property allows slowing down 3D rendering while keeping QtQuick UI rendering intact, decreasing the CPU/GPU usage.

This property was introduced in Qt 3D Studio 2.7.

Access functions:

int skipFramesInterval() const
void setSkipFramesInterval(int interval)

Notifier signal:

void skipFramesIntervalChanged(int interval)

stereoEyeSeparation : double

Specifies the eye (camera) separation of stereo rendering. Value is the amount left and right eye cameras move in x-coordinate values away from center. Bigger separation increases the 3D effect. Optimal value depends on viewed presentation.

This has only effect when stereo mode is set to something else than default StereoModeMono.

This property was introduced in Qt 3D Studio 2.5.

Access functions:

double stereoEyeSeparation() const
void setStereoEyeSeparation(double separation)

Notifier signal:

void stereoEyeSeparationChanged(double separation)

stereoMode : StereoMode

Specifies the stereo mode. The default value is StereoModeMono where the view is rendered normally, as suitable for 2D displays. Other available modes target different 3D stereo rendering types.

ConstantDescription
StereoModeMonoRenders presentation normally in mono.
StereoModeTopBottomRenders presentation in stereoscopic top-bottom mode.
StereoModeLeftRightRenders presentation in stereoscopic left-right mode.
StereoModeAnaglyphRedCyanRenders presentation in anaglyph red-cyan mode.
StereoModeAnaglyphGreenMagentaRenders presentation in anaglyph green-magenta mode.

The default value is StereoModeMono.

This property was introduced in Qt 3D Studio 2.5.

Access functions:

Q3DSViewerSettings::StereoMode stereoMode() const
void setStereoMode(Q3DSViewerSettings::StereoMode mode)

Notifier signal:

void stereoModeChanged(Q3DSViewerSettings::StereoMode mode)

stereoProgressiveEnabled : bool

Enables progressive rendering in stereoscopic modes. In this mode, only single eye per frame is rendered. Left eye for odd frames and right for even frames. This halves the maximum animation frame rate (meaning e.g. 30fps on 60Hz screen) while decreasing CPU/GPU usage.

Note: This property has only effect when stereo mode is set to StereoModeTopBottom or StereoModeLeftRight.

This property was introduced in Qt 3D Studio 2.7.

Access functions:

bool stereoProgressiveEnabled() const
void setStereoProgressiveEnabled(bool enabled)

Notifier signal:

void stereoProgressiveEnabledChanged(bool enabled)

Member Function Documentation

[signal] void Q3DSViewerSettings::shadeModeChanged(Q3DSViewerSettings::ShadeMode mode)

Emitted when shade mode is changed.

void Q3DSViewerSettings::load(const QString &group, const QString &organization = QString(), const QString &application = QString())

Loads previously saved viewer settings using group, organization and application.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

void Q3DSViewerSettings::save(const QString &group, const QString &organization = QString(), const QString &application = QString())

Persistently saves the viewer settings using group, organization and application.

Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.

Available under certain Qt licenses.
Find out more.