cgv
render_types.h
1 #pragma once
2 
3 #include <cgv/math/fvec.h>
4 #include <cgv/math/fmat.h>
5 #include <cgv/math/vec.h>
6 #include <cgv/math/mat.h>
7 #include <cgv/math/quaternion.h>
8 #include <cgv/media/color.h>
9 #include <cgv/media/axis_aligned_box.h>
10 
11 namespace cgv {
12  namespace render {
13 
14  struct render_types
15  {
25  typedef cgv::math::fvec<float, 2> vec2;
27  typedef cgv::math::fvec<float, 3> vec3;
29  typedef cgv::math::fvec<float, 4> vec4;
31  typedef cgv::math::vec<float> vecn;
33  typedef cgv::math::fmat<float, 2, 2> mat2;
35  typedef cgv::math::fmat<float, 3, 3> mat3;
37  typedef cgv::math::fmat<float, 4, 4> mat4;
39  typedef cgv::math::fmat<float, 3, 4> mat34;
41  typedef cgv::math::mat<float> matn;
43  typedef cgv::math::fvec<double, 2> dvec2;
45  typedef cgv::math::fvec<double, 3> dvec3;
47  typedef cgv::math::fvec<double, 4> dvec4;
49  typedef cgv::math::vec<double> dvecn;
51  typedef cgv::math::fmat<double, 2, 2> dmat2;
53  typedef cgv::math::fmat<double, 3, 3> dmat3;
55  typedef cgv::math::fmat<double, 4, 4> dmat4;
57  typedef cgv::math::fmat<double, 3, 4> dmat34;
59  typedef cgv::math::mat<double> dmatn;
73  typedef cgv::math::quaternion<float> quat;
75  typedef cgv::math::quaternion<double> dquat;
77  typedef cgv::math::fvec<int32_t, 2> ivec2;
79  typedef cgv::math::fvec<int32_t, 3> ivec3;
81  typedef cgv::math::fvec<int32_t, 4> ivec4;
83  typedef cgv::math::fvec<uint32_t, 2> uvec2;
85  typedef cgv::math::fvec<uint32_t, 3> uvec3;
87  typedef cgv::math::fvec<uint32_t, 4> uvec4;
88  };
89 
91  struct textured_rectangle : public cgv::render::render_types
92  {
93  box2 rectangle;
94  vec4 texcoords;
95  };
96 
97  }
98 }
cgv::math::fmat
matrix of fixed size dimensions
Definition: fmat.h:23
cgv::math::fvec< float, 2 >
cgv::math::mat
Definition: mat.h:14
cgv::math::quaternion< float >
cgv::math::vec
A column vector class.
Definition: fvec.h:13
cgv::render::textured_rectangle
simple helper class to store rectangles with texture coordinates
Definition: render_types.h:92
cgv::media::color
Definition: color.h:51
cgv::media::axis_aligned_box
Definition: axis_aligned_box.h:15
cgv
the cgv namespace
Definition: vr_calib.cxx:9