diff options
| -rw-r--r-- | src/mmscene.cpp | 16 | ||||
| -rw-r--r-- | src/mmscene.h | 14 |
2 files changed, 27 insertions, 3 deletions
diff --git a/src/mmscene.cpp b/src/mmscene.cpp index 26ba296..7078bbb 100644 --- a/src/mmscene.cpp +++ b/src/mmscene.cpp @@ -9,6 +9,7 @@ MMScene::MMScene(QQuickItem *parent) m_cube = NULL; m_sphere = NULL; m_disc = NULL; + m_chessboard = NULL; // Stop rotation toggleMove(); @@ -40,6 +41,12 @@ MMScene::~MMScene() delete m_disc; m_disc = NULL; } + + if (m_chessboard != NULL) + { + delete m_chessboard; + m_chessboard = NULL; + } } void MMScene::paintUnderQmlScene() @@ -59,6 +66,7 @@ void MMScene::paintOnTopOfQmlScene() //m_cube->draw(m_renderer); //m_sphere->draw(m_renderer); m_disc->draw(m_renderer); + m_chessboard->drawBoard(m_renderer); m_renderer->popMvMatrix(); } @@ -66,6 +74,7 @@ void MMScene::setupGeometry() { //createCube(QVector3D(0.0, 0.0, 0.0), QVector3D(1.0, 1.0, 1.0)); //createSphere(); + createChessboard(); createDisc(); //createF(5.0); //m_colorArrayEnabled = true; @@ -127,6 +136,13 @@ void MMScene::createDisc() m_disc->makeSurface(&m_points, &m_indices); } +void MMScene::createChessboard() +{ + m_chessboard = new GLChessboard(8, 8); + + m_chessboard->createBoard(); +} + void MMScene::createF(double height) { float stdLength = height / 5.0; diff --git a/src/mmscene.h b/src/mmscene.h index 78df57a..7745206 100644 --- a/src/mmscene.h +++ b/src/mmscene.h @@ -1,10 +1,11 @@ #ifndef MMSCENE_H #define MMSCENE_H +#include "glchessboard.h" #include "glcube.h" +#include "gldisc.h" #include "glitem.h" #include "glsphere.h" -#include "gldisc.h" class MMScene : public GLItem { @@ -51,16 +52,21 @@ protected: virtual void createCube(const QVector3D &lbb, const QVector3D &rtf); /** - * @brief createSphere Creates a sphere and apends it for drawing, + * @brief createSphere Creates a sphere and appends it for drawing, */ void createSphere(); /** - * @brief createDisc Creates a disc and apends it for drawing. + * @brief createDisc Creates a disc and appends it for drawing. */ void createDisc(); /** + * @brief createChessboard Creates a chessboard and appends it for drawing. + */ + void createChessboard(); + + /** * @brief createF Creates an 'F' with cubes. * @param height The height of the 'F'. */ @@ -79,6 +85,8 @@ private: GLDisc *m_disc; + GLChessboard *m_chessboard; + /** * @brief m_MouseNear * The near point of a mouse click or movement. |
