#ifndef GLDISC_H #define GLDISC_H #include #include "glbody.h" class GLDisc : public GLBody { public: GLDisc(double radius = 1.0, double height = 2.0, QVector3D lowerMiddlePoint = QVector3D(0.0, 0.0, 0.0), int sides = 10, GLColorRgba color = GLColorRgba::clBlue, QString textureFile = ""); virtual void makeSurface(QVector *pointContainer, QVector *indexContainer); virtual void draw(GLESRenderer *renderer); virtual bool isHit(QVector3D p1, QVector3D p2); protected: QVector3D calculatePoint(double sideAngle); double m_height; double m_circleRadius; int m_sides; QVector3D m_lowerMiddlePoint; }; #endif // GLDISC_H