summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/doc/src
diff options
context:
space:
mode:
Diffstat (limited to 'src/datavisualization/doc/src')
-rw-r--r--src/datavisualization/doc/src/qtdatavisualization-qml-abstractdeclarative.qdoc72
-rw-r--r--src/datavisualization/doc/src/qtdatavisualization-qml-bars3d.qdoc5
-rw-r--r--src/datavisualization/doc/src/qtdatavisualization-qml-scatter3d.qdoc5
-rw-r--r--src/datavisualization/doc/src/qtdatavisualization-qml-surface3d.qdoc5
-rw-r--r--src/datavisualization/doc/src/qtdatavisualization.qdoc24
5 files changed, 57 insertions, 54 deletions
diff --git a/src/datavisualization/doc/src/qtdatavisualization-qml-abstractdeclarative.qdoc b/src/datavisualization/doc/src/qtdatavisualization-qml-abstractdeclarative.qdoc
index 076af455..5b251768 100644
--- a/src/datavisualization/doc/src/qtdatavisualization-qml-abstractdeclarative.qdoc
+++ b/src/datavisualization/doc/src/qtdatavisualization-qml-abstractdeclarative.qdoc
@@ -28,12 +28,6 @@
Note that this type is uncreatable, but contains properties that are shared between
the 3D visualizations.
- \note QML doesn't support the type of anti-aliasing used by Qt Data Visualization graphs
- by default. Setting the \c antialiasing property doesn't affect graphs. To enable
- anti-aliasing for graphs, a custom surface format must be set up for the QQuickView
- before showing it. You can use the convenience function
- \c{QtDataVisualization::qDefaultSurfaceFormat()} to create the custom surface format object.
-
For AbstractGraph3D enums, see \l QAbstract3DGraph::SelectionFlag and
\l QAbstract3DGraph::ShadowQuality
@@ -68,7 +62,7 @@
/*!
\qmlproperty AbstractGraph3D.RenderingMode AbstractGraph3D::renderingMode
- Defaults to RenderDirectToBackground.
+ Defaults to \c{RenderIndirect}.
\table
\header
@@ -76,38 +70,52 @@
\li Description
\row
\li RenderDirectToBackground
- \li Indicates that the graph should also clear the whole window before
- rendering the graph, including the areas outside the graph.
- Since the graphs in this rendering mode are drawn first under other QML items, the
- regular QML window clearing before rendering is suppressed when there are any graphs
- in the window; the graphs handle the clearing themselves instead.
- If you have any other items besides graphs that do similar
- custom drawing under other QML items, you need to set this property to RenderDirectToBackground_NoClear
- on all graphs drawn to same window with the other custom items, or it is likely that the
- other custom items do not render properly. If the graphics hardware and current configuration
- supports antialiasing that will be used to provide a higher quality rendering with good performance.
- See \c {QtDataVisualization::qDefaultSurfaceFormat}.
+ \li Indicates the graph will be rendered directly on the window background.
+ This mode also clears the whole window before rendering the graph, including the areas
+ outside the graph.
+ Since the graphs in this rendering mode are drawn on the window background under other QML
+ items, the regular QML window clearing before rendering is suppressed. The graphs handle the clearing
+ themselves instead.
+ If the surface format of the window supports antialiasing, it will be used (see
+ \c {QtDataVisualization::qDefaultSurfaceFormat()}).
+ This rendering mode offers the best performance at the expense of non-standard QML behavior. For example,
+ the graphs do not obey the Z ordering of QML items and the opacity value has no effect on them.
\row
\li RenderDirectToBackground_NoClear
- \li Indicates the graph will not clear the whole window before rendering
- the graph. The graphs in this renderind mode are drawn first under other QML items.
- If the graphics hardware and current configuration supports antialiasing that will be
- used to provide a higher quality rendering with good performance.
- See \c {QtDataVisualization::qDefaultSurfaceFormat}.
+ \li Similar to RenderDirectToBackground mode, except that the graph will not clear the whole
+ window before rendering the graph. This mode is better for windows where you have other custom items
+ besides the graphs that also draw on the window background. In that case you need to either take care
+ of the window clearing yourself or ensure that all areas of the window are fully covered with opaque
+ items.
+ If one graph in the window uses either of the direct rendering modes, then all other graphs in the
+ same window also drawn in direct modes should use the exact same direct rendering mode.
+ Otherwise some graphs may not show up, depending on the drawing order of the graphs.
\row
- \li RenderIndirect_NoAA
+ \li RenderIndirect
\li Indicates the graph will be first rendered to an offscreen surface that
- is then drawn during normal QML item rendering to the correct Z order. No antialiasing
- post processing is done on the graph, meaning the quality will be lower but performance
- should be better.
+ is then drawn during normal QML item rendering. The rendered image is
+ antialiased using multisampling method if it is supported in the current environment and the
+ msaaSamples property value is greater than zero.
+ This rendering mode offers good quality and normal QML item behavior at the expense of performance.
\endtable
- \note If one graph in the window uses either RenderDirectToBackground or RenderDirectToBackground_NoClear, then all
- other graphs in the window drawn in direct mode should use the same rendering mode in that window.
- Otherwise some graphs may not show.
+ \note Antialiasing is not supported in OpenGL ES2 environments in any rendering mode.
+
+ \note Setting the \c antialiasing property of the graphs doesn't do anything. However, it is
+ set by the graph itself if the current rendering mode uses antialiasing.
- \note If window clearing before rendering is suppressed, any areas of the window not fully
- covered with opaque items may not draw properly.
+ \sa msaaSamples
+ */
+
+/*!
+ \qmlproperty int AbstractGraph3D::msaaSamples
+ The number of samples used in multisample antialiasing when renderingMode is \c RenderIndirect.
+ When renderingMode is \c RenderDirectToBackground or \c RenderDirectToBackground_NoClear, this
+ property value is read-only and returns the number of samples specified by the window surface
+ format.
+ Defaults to 4.
+
+ \sa renderingMode
*/
/*!
diff --git a/src/datavisualization/doc/src/qtdatavisualization-qml-bars3d.qdoc b/src/datavisualization/doc/src/qtdatavisualization-qml-bars3d.qdoc
index 443cebf6..6ee51742 100644
--- a/src/datavisualization/doc/src/qtdatavisualization-qml-bars3d.qdoc
+++ b/src/datavisualization/doc/src/qtdatavisualization-qml-bars3d.qdoc
@@ -36,11 +36,6 @@
*
* See \l{Qt Quick 2 Bars Example} for more thorough usage example.
*
- * \note Qt Data Visualization graphs are rendered behind any other QML elements on screen, including
- * the parent elements of the graph. To make the whole graph show, ensure that no other element
- * draws anything over the area the graph occupies. For example, having a non-transparent \c Rectangle
- * item as the parent of a graph causes the graph to be hidden.
- *
* \sa Bar3DSeries, ItemModelBarDataProxy, Scatter3D, Surface3D, {Qt Data Visualization C++ Classes}
*/
diff --git a/src/datavisualization/doc/src/qtdatavisualization-qml-scatter3d.qdoc b/src/datavisualization/doc/src/qtdatavisualization-qml-scatter3d.qdoc
index 76f68af4..4ea7888c 100644
--- a/src/datavisualization/doc/src/qtdatavisualization-qml-scatter3d.qdoc
+++ b/src/datavisualization/doc/src/qtdatavisualization-qml-scatter3d.qdoc
@@ -36,11 +36,6 @@
See \l{Qt Quick 2 Scatter Example} for more thorough usage example.
- \note Qt Data Visualization graphs are rendered behind any other QML elements on screen, including
- the parent elements of the graph. To make the whole graph show, ensure that no other element
- draws anything over the area the graph occupies. For example, having a non-transparent \c Rectangle
- item as the parent of a graph causes the graph to be hidden.
-
\sa Scatter3DSeries, ScatterDataProxy, Bars3D, Surface3D, {Qt Data Visualization C++ Classes}
*/
diff --git a/src/datavisualization/doc/src/qtdatavisualization-qml-surface3d.qdoc b/src/datavisualization/doc/src/qtdatavisualization-qml-surface3d.qdoc
index 576496b9..23a9a004 100644
--- a/src/datavisualization/doc/src/qtdatavisualization-qml-surface3d.qdoc
+++ b/src/datavisualization/doc/src/qtdatavisualization-qml-surface3d.qdoc
@@ -36,11 +36,6 @@
See \l{Qt Quick 2 Surface Example} for more thorough usage example.
- \note Qt Data Visualization graphs are rendered behind any other QML elements on screen, including
- the parent elements of the graph. To make the whole graph show, ensure that no other element
- draws anything over the area the graph occupies. For example, having a non-transparent \c Rectangle
- item as the parent of a graph causes the graph to be hidden.
-
\sa Surface3DSeries, ItemModelSurfaceDataProxy, Bars3D, Scatter3D, {Qt Data Visualization C++ Classes}
*/
diff --git a/src/datavisualization/doc/src/qtdatavisualization.qdoc b/src/datavisualization/doc/src/qtdatavisualization.qdoc
index c85b9dbb..e68a1086 100644
--- a/src/datavisualization/doc/src/qtdatavisualization.qdoc
+++ b/src/datavisualization/doc/src/qtdatavisualization.qdoc
@@ -301,24 +301,34 @@
* \fn QSurfaceFormat QtDataVisualization::qDefaultSurfaceFormat(bool antialias = true)
* \relates QAbstract3DGraph
*
- * Anti-aliasing is turned on by default on C++ and turned off on QML, except in OpenGL ES2
- * environments, where anti-aliasing is not supported by Qt Data Visualization.
- * This convenience function can be used to construct a suitable surface format for use by
+ * This convenience function can be used to create a custom surface format suitable for use by
* Qt Data Visualization graphs.
- * The \a{antialias} parameter specifies whether or not anti-aliasing is activated.
+ *
+ * The \a antialias parameter specifies whether or not antialiasing is activated.
+ *
* Give the surface format returned by this function to the graph constructor (C++) or set
* it as the window format for QQuickView (QML) before calling show on it.
*
- * For example, disable anti-aliasing on C++ application:
+ * For example, disable antialiasing on C++ application:
*
* \code
+ * #include <QtDataVisualization/qutils.h>
+ *
+ * // ...
+ *
* Q3DBars *graph = new Q3DBars(QtDataVisualization::qDefaultSurfaceFormat(false));
* \endcode
*
- * For example, enable anti-aliasing on QML application:
+ * For example, enable antialiasing for direct rendering modes on QML application:
*
* \code
- * QtQuick2ApplicationViewer viewer;
+ * #include <QtDataVisualization/qutils.h>
+ *
+ * // ...
+ *
+ * QQuickView viewer;
* viewer.setFormat(QtDataVisualization::qDefaultSurfaceFormat());
* \endcode
+ *
+ * \note Antialiasing is not supported in OpenGL ES2 environments.
*/