+#ifndef MSP_GL_BOX_H_
+#define MSP_GL_BOX_H_
+
+#include "geometrybuilder.h"
+#include "vector.h"
+
+namespace Msp {
+namespace GL {
+
+class BoxBuilder: public GeometryBuilder
+{
+private:
+ Vector3 origin;
+ Vector3 span;
+
+public:
+ BoxBuilder(float, float, float);
+ BoxBuilder(const Vector3 &, const Vector3 &);
+
+ using GeometryBuilder::build;
+ virtual void build(PrimitiveBuilder &) const;
+private:
+ void build_face(PrimitiveBuilder &, const Vector3 &, const Vector3 &, const Vector3 &) const;
+};
+
+} // namespace GL
+} // namespace Msp
+
+#endif