summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/utils/surfaceobject_p.h
diff options
context:
space:
mode:
authorMika Salmela <mika.salmela@digia.com>2014-07-04 09:58:12 +0300
committerMika Salmela <mika.salmela@digia.com>2014-07-04 10:03:13 +0300
commit6e4fb232702fa128b5efa3eef5dfaff4870a9fd0 (patch)
tree315abbc95d09a558e3eb47c757c06fe66ce3c236 /src/datavisualization/utils/surfaceobject_p.h
parent6264a2ff1518d374e6150bf584f2ad3d133457dd (diff)
Texture to surface
API for setting a texture to surface. Task-number: QTRD-3232 Change-Id: Icd9de61882b54b9c1fc84a742e49980926ca681d Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Diffstat (limited to 'src/datavisualization/utils/surfaceobject_p.h')
-rw-r--r--src/datavisualization/utils/surfaceobject_p.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/datavisualization/utils/surfaceobject_p.h b/src/datavisualization/utils/surfaceobject_p.h
index b3ba80e9..3266c626 100644
--- a/src/datavisualization/utils/surfaceobject_p.h
+++ b/src/datavisualization/utils/surfaceobject_p.h
@@ -57,6 +57,8 @@ public:
bool changeGeometry, bool polar, bool flipXZ = false);
void setUpSmoothData(const QSurfaceDataArray &dataArray, const QRect &space,
bool changeGeometry, bool polar, bool flipXZ = false);
+ void smoothUVs(const QSurfaceDataArray &dataArray, const QSurfaceDataArray &modelArray);
+ void coarseUVs(const QSurfaceDataArray &dataArray, const QSurfaceDataArray &modelArray);
void updateCoarseRow(const QSurfaceDataArray &dataArray, int rowIndex, bool polar);
void updateSmoothRow(const QSurfaceDataArray &dataArray, int startRow, bool polar);
void updateSmoothItem(const QSurfaceDataArray &dataArray, int row, int column, bool polar);
@@ -67,11 +69,13 @@ public:
void createCoarseGridlineIndices(int x, int y, int endX, int endY);
void uploadBuffers();
GLuint gridElementBuf();
+ GLuint uvBuf();
GLuint gridIndexCount();
QVector3D vertexAt(int column, int row);
void clear();
float minYValue() const { return m_minY; }
float maxYValue() const { return m_maxY; }
+ inline void activateSurfaceTexture(bool value) { m_returnTextureBuffer = value; }
private:
QVector3D normal(const QVector3D &a, const QVector3D &b, const QVector3D &c, bool flipNormal);
@@ -97,6 +101,8 @@ private:
Surface3DRenderer *m_renderer;
float m_minY;
float m_maxY;
+ GLuint m_uvTextureBuffer;
+ bool m_returnTextureBuffer;
};
QT_END_NAMESPACE_DATAVISUALIZATION