summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine/abstract3drenderer_p.h
diff options
context:
space:
mode:
authorKeränen Pasi <pasi.keranen@digia.com>2013-12-16 16:17:07 +0200
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2013-12-17 12:52:03 +0200
commitfba185e6c2fa5158aa60ba4468c1f1a70177f77a (patch)
tree4532ce4cc96fc52a32410f552e8557ea68d98267 /src/datavisualization/engine/abstract3drenderer_p.h
parent018379d522deca3a6f7b184fbc12f122a87aaadc (diff)
Antialiasing and direct rendering with QML.
Task-id: QTRD-2565 Change-Id: I4099c869f157361ee6a900dfc1c29301b373ac30 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src/datavisualization/engine/abstract3drenderer_p.h')
-rw-r--r--src/datavisualization/engine/abstract3drenderer_p.h72
1 files changed, 42 insertions, 30 deletions
diff --git a/src/datavisualization/engine/abstract3drenderer_p.h b/src/datavisualization/engine/abstract3drenderer_p.h
index 97951260..f9e97299 100644
--- a/src/datavisualization/engine/abstract3drenderer_p.h
+++ b/src/datavisualization/engine/abstract3drenderer_p.h
@@ -59,33 +59,6 @@ protected:
SelectOnSlice
};
- bool m_hasNegativeValues;
- Q3DTheme *m_cachedTheme;
- Drawer *m_drawer;
- QRect m_cachedBoundingRect;
- QDataVis::ShadowQuality m_cachedShadowQuality;
- GLfloat m_autoScaleAdjustment;
-
- QDataVis::SelectionFlags m_cachedSelectionMode;
-
- AxisRenderCache m_axisCacheX;
- AxisRenderCache m_axisCacheY;
- AxisRenderCache m_axisCacheZ;
- TextureHelper *m_textureHelper;
- Q3DBox m_boundingBox;
-
- Q3DScene *m_cachedScene;
- bool m_selectionDirty;
- SelectionState m_selectionState;
- QPoint m_inputPosition;
- QVector<SeriesRenderCache> m_visibleSeriesList;
-
-#ifdef DISPLAY_RENDER_SPEED
- bool m_isFirstFrame;
- QTime m_lastFrameTime;
- GLint m_numFrames;
-#endif
-
QString generateValueLabel(const QString &format, float value);
public:
@@ -96,9 +69,6 @@ public:
virtual void render(GLuint defaultFboHandle);
- virtual void updateBoundingRect(const QRect &boundingRect);
- virtual void updatePosition(const QRect &boundingRect);
-
virtual void updateTheme(Q3DTheme *theme);
virtual void updateSelectionMode(QDataVis::SelectionFlags newMode);
virtual void updateScene(Q3DScene *scene);
@@ -141,6 +111,48 @@ protected:
AxisRenderCache &axisCacheForOrientation(Q3DAbstractAxis::AxisOrientation orientation);
virtual void lowerShadowQuality();
+
+ void fixGradient(QLinearGradient *gradient, GLuint *gradientTexture);
+
+ bool m_hasNegativeValues;
+ Q3DTheme *m_cachedTheme;
+ Drawer *m_drawer;
+ QRect m_viewport;
+ QDataVis::ShadowQuality m_cachedShadowQuality;
+ GLfloat m_autoScaleAdjustment;
+
+ QDataVis::SelectionFlags m_cachedSelectionMode;
+
+ Q3DTheme::ColorStyle m_cachedColorStyle;
+ QColor m_cachedObjectColor;
+ QLinearGradient m_cachedObjectGradient;
+ GLuint m_objectGradientTexture;
+ QColor m_cachedSingleHighlightColor;
+ QLinearGradient m_cachedSingleHighlightGradient;
+ GLuint m_singleHighlightGradientTexture;
+ QColor m_cachedMultiHighlightColor;
+ QLinearGradient m_cachedMultiHighlightGradient;
+ GLuint m_multiHighlightGradientTexture;
+
+ AxisRenderCache m_axisCacheX;
+ AxisRenderCache m_axisCacheY;
+ AxisRenderCache m_axisCacheZ;
+ TextureHelper *m_textureHelper;
+ Q3DBox m_boundingBox;
+
+ Q3DScene *m_cachedScene;
+ bool m_selectionDirty;
+ SelectionState m_selectionState;
+ QPoint m_inputPosition;
+ QVector<SeriesRenderCache> m_visibleSeriesList;
+ QRect m_primarySubViewport;
+ QRect m_secondarySubViewport;
+
+#ifdef DISPLAY_RENDER_SPEED
+ bool m_isFirstFrame;
+ QTime m_lastFrameTime;
+ GLint m_numFrames;
+#endif
};
QT_DATAVISUALIZATION_END_NAMESPACE