@@ -141,7 +141,7 QT_CHARTS_BEGIN_NAMESPACE | |||
|
141 | 141 | Drawing series with OpenGL is supported only for QLineSeries and QScatterSeries. |
|
142 | 142 | Line series used as edge series for a QAreaSeries cannot use OpenGL acceleration. |
|
143 | 143 | When a chart contains any series that are drawn with OpenGL, a transparent QOpenGLWidget |
|
144 |
is created on top of the chart plot area. |
|
|
144 | is created on top of the chart plot area. The accelerated series are not drawn on the underlying | |
|
145 | 145 | QGraphicsView, but are instead drawn on the created QOpenGLWidget. |
|
146 | 146 | |
|
147 | 147 | Performance gained from using OpenGL to accelerate series drawing depends on the underlying |
@@ -152,10 +152,7 QT_CHARTS_BEGIN_NAMESPACE | |||
|
152 | 152 | |
|
153 | 153 | The OpenGL acceleration of series drawing is meant for use cases that need fast drawing of |
|
154 | 154 | large numbers of points. It is optimized for efficiency, and therefore the series using |
|
155 |
it lack support for |
|
|
156 | ||
|
157 | There are the following restrictions imposed on charts and series when using OpenGL | |
|
158 | acceleration: | |
|
155 | it lack support for many features available to non-accelerated series: | |
|
159 | 156 | |
|
160 | 157 | \list |
|
161 | 158 | \li Series animations are not supported for accelerated series. |
@@ -165,17 +162,29 QT_CHARTS_BEGIN_NAMESPACE | |||
|
165 | 162 | Only solid lines and plain scatter dots are supported. |
|
166 | 163 | The scatter dots may be circular or rectangular, depending on the underlying graphics |
|
167 | 164 | hardware and drivers. |
|
168 |
\li Polar charts |
|
|
165 | \li Polar charts do not support accelerated series. | |
|
169 | 166 | \li Mouse events are not supported for accelerated series. |
|
170 | \li Since the accelerated series are drawn on top of the entire graphics view, they get drawn | |
|
171 | on top of any other graphics items that you may have on top chart in the same scene. | |
|
172 | \li To enable QOpenGLWidget to be partially transparent, it needs to be stacked on top of | |
|
173 | all other widgets. This means you cannot have other widgets partially covering the | |
|
174 | chart. | |
|
175 | 167 | \li Enabling chart drop shadow is not recommended when using accelerated series, |
|
176 | 168 | as that can slow the frame rate down significantly. |
|
177 | 169 | \endlist |
|
178 | 170 | |
|
171 | These additional restrictions stem from the fact that the accelerated series is drawn on a | |
|
172 | separate widget on top of the chart: | |
|
173 | ||
|
174 | \list | |
|
175 | \li If you draw any graphics items on top of a chart containing an accelerated series, | |
|
176 | the accelerated series is drawn over those items. | |
|
177 | \li To enable QOpenGLWidget to be partially transparent, it needs to be stacked on top of | |
|
178 | all other widgets. This means you cannot have other widgets partially covering the | |
|
179 | chart when using accelerated series. | |
|
180 | \li Accelerated series are not supported for use cases where the graphics scene has more than | |
|
181 | one graphics view attached to it. | |
|
182 | \li Accelerated series are not supported for use cases where the chart doesn't fill the entire | |
|
183 | graphics view or has non-default geometry. For example, scrolling the view with scroll | |
|
184 | bars or adding transformations to the graphics view cause the accelerated series to | |
|
185 | be drawn in incorrect position related to the chart. | |
|
186 | \endlist | |
|
187 | ||
|
179 | 188 | The default value is \c{false}. |
|
180 | 189 | */ |
|
181 | 190 | /*! |
@@ -183,11 +192,37 QT_CHARTS_BEGIN_NAMESPACE | |||
|
183 | 192 | Specifies whether or not the series is drawn with OpenGL. |
|
184 | 193 | |
|
185 | 194 | Drawing series with OpenGL is supported only for LineSeries and ScatterSeries. |
|
195 | Line series used as edge series for a AreaSeries cannot use OpenGL acceleration. | |
|
196 | When a chart contains any series that are drawn with OpenGL, an additional transparent child | |
|
197 | node is created for the ChartView node. The accelerated series are not drawn on the | |
|
198 | ChartView node, but are instead drawn on the child node. | |
|
199 | ||
|
200 | Performance gained from using OpenGL to accelerate series drawing depends on the underlying | |
|
201 | hardware, but in most cases it is significant. For example, on a standard desktop computer, | |
|
202 | enabling OpenGL acceleration for a series typically allows rendering at least hundred times | |
|
203 | more points without reduction on the frame rate. | |
|
204 | Chart size also has less effect on the frame rate. | |
|
205 | The biggest performance sink when rendering ChartView is rendering and uploading the underlying | |
|
206 | chart texture. If the underlying chart itself is not changing rapidly, significant extra | |
|
207 | performance is gained from not needing to regenerate the chart texture for each frame. | |
|
208 | ||
|
209 | The OpenGL acceleration of series drawing is meant for use cases that need fast drawing of | |
|
210 | large numbers of points. It is optimized for efficiency, and therefore the series using | |
|
211 | it lack support for many features available to non-accelerated series: | |
|
186 | 212 | |
|
187 | For more details, see QAbstractSeries::useOpenGL documentation. QML applications have similar | |
|
188 | restrictions as those listed in QAbstractSeries::useOpenGL documentation, | |
|
189 | except there is no restriction about covering the ChartView partially with other | |
|
190 | items due to different rendering mechanism. | |
|
213 | \list | |
|
214 | \li Series animations are not supported for accelerated series. | |
|
215 | \li Antialiasing is not supported for accelerated series. | |
|
216 | \li Point labels are not supported for accelerated series. | |
|
217 | \li Marker shapes are ignored for accelerated series. | |
|
218 | Only plain scatter dots are supported. | |
|
219 | The scatter dots may be circular or rectangular, depending on the underlying graphics | |
|
220 | hardware and drivers. | |
|
221 | \li Polar charts do not support accelerated series. | |
|
222 | \li Mouse events are not supported for accelerated series. | |
|
223 | \li Enabling chart drop shadow is not recommended when using accelerated series, | |
|
224 | as that can slow the frame rate down significantly. | |
|
225 | \endlist | |
|
191 | 226 | |
|
192 | 227 | The default value is \c{false}. |
|
193 | 228 | */ |
General Comments 0
You need to be logged in to leave comments.
Login now