1 #ifndef GIM_GEOM_TYPES_H_INCLUDED
2 #define GIM_GEOM_TYPES_H_INCLUDED
4 /*! \file gim_geom_types.h
5 \author Francisco Leon Najera
8 -----------------------------------------------------------------------------
9 This source file is part of GIMPACT Library.
11 For the latest info, see http://gimpact.sourceforge.net/
13 Copyright (c) 2006 Francisco Leon Najera. C.C. 80087371.
14 email: projectileman@yahoo.com
16 This library is free software; you can redistribute it and/or
17 modify it under the terms of EITHER:
18 (1) The GNU Lesser General Public License as published by the Free
19 Software Foundation; either version 2.1 of the License, or (at
20 your option) any later version. The text of the GNU Lesser
21 General Public License is included with this library in the
22 file GIMPACT-LICENSE-LGPL.TXT.
23 (2) The BSD-style license that is included with this library in
24 the file GIMPACT-LICENSE-BSD.TXT.
25 (3) The zlib/libpng license that is included with this library in
26 the file GIMPACT-LICENSE-ZLIB.TXT.
28 This library is distributed in the hope that it will be useful,
29 but WITHOUT ANY WARRANTY; without even the implied warranty of
30 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the files
31 GIMPACT-LICENSE-LGPL.TXT, GIMPACT-LICENSE-ZLIB.TXT and GIMPACT-LICENSE-BSD.TXT for more details.
33 -----------------------------------------------------------------------------
41 //! Short Integer vector 2D
42 typedef GSHORT vec2s[2];
44 typedef GSHORT vec3s[3];
46 typedef GSHORT vec4s[4];
48 //! Short Integer vector 2D
49 typedef GUSHORT vec2us[2];
51 typedef GUSHORT vec3us[3];
53 typedef GUSHORT vec4us[4];
56 typedef GINT vec2i[2];
58 typedef GINT vec3i[3];
60 typedef GINT vec4i[4];
62 //! Unsigned Integer vector 2D
63 typedef GUINT vec2ui[2];
64 //! Unsigned Integer vector 3D
65 typedef GUINT vec3ui[3];
66 //! Unsigned Integer vector 4D
67 typedef GUINT vec4ui[4];
70 typedef GREAL vec2f[2];
72 typedef GREAL vec3f[3];
74 typedef GREAL vec4f[4];
77 typedef GREAL2 vec2d[2];
79 typedef GREAL2 vec3d[3];
81 typedef GREAL2 vec4d[4];
83 //! Matrix 2D, row ordered
84 typedef GREAL mat2f[2][2];
85 //! Matrix 3D, row ordered
86 typedef GREAL mat3f[3][3];
87 //! Matrix 4D, row ordered
88 typedef GREAL mat4f[4][4];
91 typedef GREAL quatf[4];
93 //typedef struct _aabb3f aabb3f;
97 #endif // GIM_GEOM_TYPES_H_INCLUDED