X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbuilders%2Fbox.h;fp=source%2Fbuilders%2Fbox.h;h=1059d21918b0e119cabaa68041da7a6d3b9cd389;hb=7aaec9a70b8d7733429bec043f8e33e02956f266;hp=0000000000000000000000000000000000000000;hpb=bec07999d95b76f4b47cffcc564d0cd0afc0435e;p=libs%2Fgl.git diff --git a/source/builders/box.h b/source/builders/box.h new file mode 100644 index 00000000..1059d219 --- /dev/null +++ b/source/builders/box.h @@ -0,0 +1,29 @@ +#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