QAbstract3DSeries Class
The QAbstract3DSeries class is a base class for all data series. More...
Header: | #include <QAbstract3DSeries> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS DataVisualization) target_link_libraries(mytarget PRIVATE Qt6::DataVisualization) |
qmake: | QT += datavisualization |
Since: | QtDataVisualization 1.0 |
Instantiated By: | Abstract3DSeries |
Inherits: | QObject |
Inherited By: |
Public Types
enum | Mesh { MeshUserDefined, MeshBar, MeshCube, MeshPyramid, MeshCone, …, MeshPoint } |
enum | SeriesType { SeriesTypeNone, SeriesTypeBar, SeriesTypeScatter, SeriesTypeSurface } |
Properties
|
|
Public Functions
virtual | ~QAbstract3DSeries() |
QColor | baseColor() const |
QLinearGradient | baseGradient() const |
Q3DTheme::ColorStyle | colorStyle() const |
bool | isItemLabelVisible() const |
bool | isMeshSmooth() const |
bool | isVisible() const |
QString | itemLabel() const |
QString | itemLabelFormat() const |
QAbstract3DSeries::Mesh | mesh() const |
QQuaternion | meshRotation() const |
QColor | multiHighlightColor() const |
QLinearGradient | multiHighlightGradient() const |
QString | name() const |
void | setBaseColor(const QColor &color) |
void | setBaseGradient(const QLinearGradient &gradient) |
void | setColorStyle(Q3DTheme::ColorStyle style) |
void | setItemLabelFormat(const QString &format) |
void | setItemLabelVisible(bool visible) |
void | setMesh(QAbstract3DSeries::Mesh mesh) |
void | setMeshAxisAndAngle(const QVector3D &axis, float angle) |
void | setMeshRotation(const QQuaternion &rotation) |
void | setMeshSmooth(bool enable) |
void | setMultiHighlightColor(const QColor &color) |
void | setMultiHighlightGradient(const QLinearGradient &gradient) |
void | setName(const QString &name) |
void | setSingleHighlightColor(const QColor &color) |
void | setSingleHighlightGradient(const QLinearGradient &gradient) |
void | setUserDefinedMesh(const QString &fileName) |
void | setVisible(bool visible) |
QColor | singleHighlightColor() const |
QLinearGradient | singleHighlightGradient() const |
QAbstract3DSeries::SeriesType | type() const |
QString | userDefinedMesh() const |
Signals
void | baseColorChanged(const QColor &color) |
void | baseGradientChanged(const QLinearGradient &gradient) |
void | colorStyleChanged(Q3DTheme::ColorStyle style) |
void | itemLabelChanged(const QString &label) |
void | itemLabelFormatChanged(const QString &format) |
void | itemLabelVisibilityChanged(bool visible) |
void | meshChanged(QAbstract3DSeries::Mesh mesh) |
void | meshRotationChanged(const QQuaternion &rotation) |
void | meshSmoothChanged(bool enabled) |
void | multiHighlightColorChanged(const QColor &color) |
void | multiHighlightGradientChanged(const QLinearGradient &gradient) |
void | nameChanged(const QString &name) |
void | singleHighlightColorChanged(const QColor &color) |
void | singleHighlightGradientChanged(const QLinearGradient &gradient) |
void | userDefinedMeshChanged(const QString &fileName) |
void | visibilityChanged(bool visible) |
Detailed Description
There are inherited classes for each supported series type: QBar3DSeries, QScatter3DSeries, and QSurface3DSeries.
For more information, see Qt Data Visualization Data Handling.
Member Type Documentation
enum QAbstract3DSeries::Mesh
Predefined mesh types. All styles are not usable with all visualization types.
Constant | Value | Description |
---|---|---|
QAbstract3DSeries::MeshUserDefined | 0 | User defined mesh, set via QAbstract3DSeries::userDefinedMesh property. |
QAbstract3DSeries::MeshBar | 1 | Basic rectangular bar. |
QAbstract3DSeries::MeshCube | 2 | Basic cube. |
QAbstract3DSeries::MeshPyramid | 3 | Four-sided pyramid. |
QAbstract3DSeries::MeshCone | 4 | Basic cone. |
QAbstract3DSeries::MeshCylinder | 5 | Basic cylinder. |
QAbstract3DSeries::MeshBevelBar | 6 | Slightly beveled (rounded) rectangular bar. |
QAbstract3DSeries::MeshBevelCube | 7 | Slightly beveled (rounded) cube. |
QAbstract3DSeries::MeshSphere | 8 | Sphere. |
QAbstract3DSeries::MeshMinimal | 9 | The minimal 3D mesh: a triangular pyramid. Usable only with Q3DScatter. |
QAbstract3DSeries::MeshArrow | 10 | Arrow pointing upwards. |
QAbstract3DSeries::MeshPoint | 11 | 2D point. Usable only with Q3DScatter. Shadows do not affect this style. Color style Q3DTheme::ColorStyleObjectGradient is not supported by this style. |
enum QAbstract3DSeries::SeriesType
Type of the series.
Constant | Value | Description |
---|---|---|
QAbstract3DSeries::SeriesTypeNone | 0 | No series type. |
QAbstract3DSeries::SeriesTypeBar | 1 | Series type for Q3DBars. |
QAbstract3DSeries::SeriesTypeScatter | 2 | Series type for Q3DScatter. |
QAbstract3DSeries::SeriesTypeSurface | 4 | Series type for Q3DSurface. |
Property Documentation
baseColor : QColor
This property holds the base color of the series.
Access functions:
QColor | baseColor() const |
void | setBaseColor(const QColor &color) |
Notifier signal:
void | baseColorChanged(const QColor &color) |
See also colorStyle and Q3DTheme::baseColors.
baseGradient : QLinearGradient
This property holds the base gradient of the series.
Access functions:
QLinearGradient | baseGradient() const |
void | setBaseGradient(const QLinearGradient &gradient) |
Notifier signal:
void | baseGradientChanged(const QLinearGradient &gradient) |
See also colorStyle and Q3DTheme::baseGradients.
colorStyle : Q3DTheme::ColorStyle
This property holds the color style for the series.
Access functions:
Q3DTheme::ColorStyle | colorStyle() const |
void | setColorStyle(Q3DTheme::ColorStyle style) |
Notifier signal:
void | colorStyleChanged(Q3DTheme::ColorStyle style) |
See also Q3DTheme::ColorStyle.
[read-only, since QtDataVisualization 1.1]
itemLabel : const QString
This property holds the formatted item label.
If there is no selected item or the selected item is not visible, returns an empty string.
This property was introduced in QtDataVisualization 1.1.
Access functions:
QString | itemLabel() const |
Notifier signal:
void | itemLabelChanged(const QString &label) |
See also itemLabelFormat.
itemLabelFormat : QString
This property holds the label format for data items in this series.
This format is used for single item labels, for example, when an item is selected. How the format is interpreted depends on series type: QBar3DSeries, QScatter3DSeries, QSurface3DSeries.
Access functions:
QString | itemLabelFormat() const |
void | setItemLabelFormat(const QString &format) |
Notifier signal:
void | itemLabelFormatChanged(const QString &format) |
[since QtDataVisualization 1.1]
itemLabelVisible : bool
This property holds the visibility of item labels in the graph.
If true
, item labels are drawn as floating labels in the graph. Otherwise, item labels are not drawn. To show the item label in an external control, this property is set to false
. Defaults to true
.
This property was introduced in QtDataVisualization 1.1.
Access functions:
bool | isItemLabelVisible() const |
void | setItemLabelVisible(bool visible) |
Notifier signal:
void | itemLabelVisibilityChanged(bool visible) |
See also itemLabelFormat and itemLabel.
mesh : Mesh
This property holds the mesh of the items in the series.
For QSurface3DSeries, this property holds the selection pointer.
If the mesh is MeshUserDefined, then the userDefinedMesh property must also be set for items to render properly. The default value depends on the graph type.
Access functions:
QAbstract3DSeries::Mesh | mesh() const |
void | setMesh(QAbstract3DSeries::Mesh mesh) |
Notifier signal:
void | meshChanged(QAbstract3DSeries::Mesh mesh) |
meshRotation : QQuaternion
This property holds the mesh rotation that is applied to all items of the series.
The rotation should be a normalized QQuaternion. For those series types that support item specific rotation, the rotations are multiplied together. QBar3DSeries ignores any rotation that is not around the y-axis. QSurface3DSeries applies the rotation only to the selection pointer. Defaults to no rotation.
Access functions:
QQuaternion | meshRotation() const |
void | setMeshRotation(const QQuaternion &rotation) |
Notifier signal:
void | meshRotationChanged(const QQuaternion &rotation) |
meshSmooth : bool
This property holds whether smooth versions of predefined meshes are used.
If true
, smooth versions set via the mesh property are used. This property does not affect custom meshes used when the mesh is set to MeshUserDefined. Defaults to false
.
Access functions:
bool | isMeshSmooth() const |
void | setMeshSmooth(bool enable) |
Notifier signal:
void | meshSmoothChanged(bool enabled) |
multiHighlightColor : QColor
This property holds the multiple item highlight color of the series.
Access functions:
QColor | multiHighlightColor() const |
void | setMultiHighlightColor(const QColor &color) |
Notifier signal:
void | multiHighlightColorChanged(const QColor &color) |
See also colorStyle and Q3DTheme::multiHighlightColor.
multiHighlightGradient : QLinearGradient
This property holds the multiple item highlight gradient of the series.
Access functions:
QLinearGradient | multiHighlightGradient() const |
void | setMultiHighlightGradient(const QLinearGradient &gradient) |
Notifier signal:
void | multiHighlightGradientChanged(const QLinearGradient &gradient) |
See also colorStyle and Q3DTheme::multiHighlightGradient.
name : QString
This property holds the series name.
The series name can be used in item label format with the tag @seriesName
.
Access functions:
QString | name() const |
void | setName(const QString &name) |
Notifier signal:
void | nameChanged(const QString &name) |
See also itemLabelFormat.
singleHighlightColor : QColor
This property holds the single item highlight color of the series.
Access functions:
QColor | singleHighlightColor() const |
void | setSingleHighlightColor(const QColor &color) |
Notifier signal:
void | singleHighlightColorChanged(const QColor &color) |
See also colorStyle and Q3DTheme::singleHighlightColor.
singleHighlightGradient : QLinearGradient
This property holds the single item highlight gradient of the series.
Access functions:
QLinearGradient | singleHighlightGradient() const |
void | setSingleHighlightGradient(const QLinearGradient &gradient) |
Notifier signal:
void | singleHighlightGradientChanged(const QLinearGradient &gradient) |
See also colorStyle and Q3DTheme::singleHighlightGradient.
[read-only]
type : const SeriesType
This property holds the type of the series.
Access functions:
QAbstract3DSeries::SeriesType | type() const |
userDefinedMesh : QString
This property holds the filename for a user defined custom mesh for objects.
The custom mesh is used when mesh is MeshUserDefined.
Note: The file needs to be in the Wavefront OBJ format and include vertices, normals, and UVs. It also needs to be in triangles.
Access functions:
QString | userDefinedMesh() const |
void | setUserDefinedMesh(const QString &fileName) |
Notifier signal:
void | userDefinedMeshChanged(const QString &fileName) |
visible : bool
This property holds the visibility of the series.
If this property is false
, the series is not rendered. Defaults to true
.
Access functions:
bool | isVisible() const |
void | setVisible(bool visible) |
Notifier signal:
void | visibilityChanged(bool visible) |
Member Function Documentation
[virtual noexcept]
QAbstract3DSeries::~QAbstract3DSeries()
Deletes the abstract 3D series.
[invokable]
void QAbstract3DSeries::setMeshAxisAndAngle(const QVector3D &axis, float angle)
A convenience function to construct a mesh rotation quaternion from axis and angle.
Note: This function can be invoked via the meta-object system and from QML. See Q_INVOKABLE.
See also meshRotation.