diff options
| author | Stefan Suhren <suhren.stefan@fh-swf.de> | 2016-01-12 11:00:38 +0100 |
|---|---|---|
| committer | Stefan Suhren <suhren.stefan@fh-swf.de> | 2016-01-12 11:00:38 +0100 |
| commit | 4c96fc9ab7a0fc6c956f4545923e313397ff7160 (patch) | |
| tree | ab5a625b3ae9f28b70538729aaa9aa0782b3ab49 | |
| parent | e8df759ad34ed3ea6a678be6e1e419fbc70a075c (diff) | |
| download | Multimedia-master.tar.gz Multimedia-master.zip | |
| -rw-r--r-- | src/mmscene.cpp | 82 | ||||
| -rw-r--r-- | src/mmscene.h | 2 |
2 files changed, 18 insertions, 66 deletions
diff --git a/src/mmscene.cpp b/src/mmscene.cpp index a7c9ede..9fe7d7c 100644 --- a/src/mmscene.cpp +++ b/src/mmscene.cpp @@ -16,8 +16,8 @@ MMScene::MMScene(QQuickItem *parent) m_vertexShaderFilename = ":/shaders/vshader.vsh"; m_eye = 10.0 * v_XZ; m_up = v_Z; - m_center = 4 * v_Y; - m_guiThreadRotation = 68.0; + //m_center = 4 * v_Y; + //m_guiThreadRotation = 68.0; m_lightingEnabled = true; m_colorArrayEnabled = false; m_texturesEnabled = true; @@ -55,25 +55,30 @@ void MMScene::paintUnderQmlScene() void MMScene::paintOnTopOfQmlScene() { m_renderer->pushMvMatrix(); - //drawAxes(5.0); + drawAxes(5.0); //drawTriangles(); //drawF(5.0); //m_cube->draw(m_renderer); - //m_sphere->draw(m_renderer); + + m_renderer->pushMvMatrix(); + m_renderer->translate(0.0, 0.0, 3.0); + m_sphere->draw(m_renderer); + m_renderer->popMvMatrix(); + foreach(GLDisc *token, m_tokens) { token->draw(m_renderer); } - m_chessboard->drawBoard(m_renderer); + //m_chessboard->drawBoard(m_renderer); m_renderer->popMvMatrix(); } void MMScene::setupGeometry() { //createCube(QVector3D(0.0, 0.0, 0.0), QVector3D(1.0, 1.0, 1.0)); - //createSphere(); - createChessboard(); + createSphere(); + //createChessboard(); createTokens(); //createF(5.0); //m_colorArrayEnabled = true; @@ -126,7 +131,7 @@ void MMScene::createCube(const QVector3D &lbb, const QVector3D &rtf) void MMScene::createSphere() { - m_sphere = new GLSphere(2.0, 100, 100); + m_sphere = new GLSphere(0.9, 50, 50); m_sphere->setDrawingMode(GL_TRIANGLE_STRIP); m_sphere->makeSurface(&m_points, &m_indices); @@ -134,65 +139,12 @@ void MMScene::createSphere() void MMScene::createTokens() { - for(int i = 0; i < 8; i+=2) - { - GLDisc *token = new GLDisc(0.5, 0.25, m_chessboard->fieldToPosition(QPoint(i, 0)), 10, GLColorRgba::clBlue, ":/textures/white_disc.jpg"); - - token->setDrawingMode(GL_TRIANGLES); - token->makeSurface(&m_points, &m_indices); - - m_tokens.append(token); - } + GLDisc *token = new GLCone(QVector3D(0.0, 0.0, 0.0), 1.2, 0.3, 3.0, 50); - for(int i = 1; i < 8; i+=2) - { - GLDisc *token = new GLDisc(0.5, 0.25, m_chessboard->fieldToPosition(QPoint(i, 1)), 10, GLColorRgba::clBlue, ":/textures/white_disc.jpg"); - - token->setDrawingMode(GL_TRIANGLES); - token->makeSurface(&m_points, &m_indices); - - m_tokens.append(token); - } + token->setDrawingMode(GL_TRIANGLES); + token->makeSurface(&m_points, &m_indices); - for(int i = 0; i < 8; i+=2) - { - GLDisc *token = new GLDisc(0.5, 0.25, m_chessboard->fieldToPosition(QPoint(i, 2)), 10, GLColorRgba::clBlue, ":/textures/white_disc.jpg"); - - token->setDrawingMode(GL_TRIANGLES); - token->makeSurface(&m_points, &m_indices); - - m_tokens.append(token); - } - - for(int i = 1; i < 8; i+=2) - { - GLDisc *token = new GLDisc(0.5, 0.25, m_chessboard->fieldToPosition(QPoint(i, 5)), 10, GLColorRgba::clBlue, ":/textures/black_disc.jpg"); - - token->setDrawingMode(GL_TRIANGLES); - token->makeSurface(&m_points, &m_indices); - - m_tokens.append(token); - } - - for(int i = 0; i < 8; i+=2) - { - GLDisc *token = new GLDisc(0.5, 0.25, m_chessboard->fieldToPosition(QPoint(i, 6)), 10, GLColorRgba::clBlue, ":/textures/black_disc.jpg"); - - token->setDrawingMode(GL_TRIANGLES); - token->makeSurface(&m_points, &m_indices); - - m_tokens.append(token); - } - - for(int i = 1; i < 8; i+=2) - { - GLDisc *token = new GLDisc(0.5, 0.25, m_chessboard->fieldToPosition(QPoint(i, 7)), 10, GLColorRgba::clBlue, ":/textures/black_disc.jpg"); - - token->setDrawingMode(GL_TRIANGLES); - token->makeSurface(&m_points, &m_indices); - - m_tokens.append(token); - } + m_tokens.append(token); } void MMScene::createChessboard() diff --git a/src/mmscene.h b/src/mmscene.h index 1340f7d..e4d22ed 100644 --- a/src/mmscene.h +++ b/src/mmscene.h @@ -2,8 +2,8 @@ #define MMSCENE_H #include "glchessboard.h" +#include "glcone.h" #include "glcube.h" -#include "gldisc.h" #include "glitem.h" #include "glsphere.h" |
