"glutil"は色と座標を管理する"GLColor"、"GLPosition"クラスを定義する。GLColorクラスはRGBA指定、GLPositionクラスは3次元座標を扱う。
- #ifndef __GLUTIL_HPP__
- #define __GLUTIL_HPP__
- #include <GLUT/glut.h>
- namespace DECS{
- namespace GL{
- static const int X = 0; //x座標の添え字
- static const int Y = 1; //y座標の添え字
- static const int Z = 2; //z座標の添え字
- static const int R = 0; //赤の添え字
- static const int G = 1; //緑の添え字
- static const int B = 2; //青の添え字
- static const int A = 3; //アルファ値の添え字
- class GLColor{
- private:
- GLdouble color_[4];
- public:
- GLColor();
- GLColor(GLdouble r, GLdouble g, GLdouble b); //アルファ値を指定しない場合は1.0
- GLColor(GLdouble r, GLdouble g, GLdouble b, GLdouble a);
- ~GLColor();
- GLdouble r();
- GLdouble g();
- GLdouble b();
- GLdouble a();
- };
- class GLPosition{
- private:
- GLdouble position_[3];
- public:
- GLPosition();
- GLPosition(GLdouble x, GLdouble y, GLdouble z);
- ~GLPosition();
- GLdouble& x();
- GLdouble& y();
- GLdouble& z();
- };
- }
- }
- #endif // __GLUTIL_HPP__
GLColorクラスではRGBAの各値を取得するのみで、インスタンス化後の変更はできない。GLPositionクラスはXYZ各値の参照を返すので、インスタンスの各値を変更することができる。
構成要素の詳細 :
- 自作OpenGLクラス(DGLLib)詳細 その1 gl.hpp
- 自作OpenGLクラス(DGLLib)詳細 その2 glutil.hpp, glutil.cpp
- 自作OpenGLクラス(DGLLib)詳細 その3 glbasicshape.hpp, glbasicshape.cpp
- 自作OpenGLクラス(DGLLib)詳細 その4 glwindow.hpp, glwindow.cpp
コメント