|
@@ -1,90 +1,40 @@
|
1
|
|
-/* -*- Mode: C++; tab-width: 3; indent-tabs-mode: t; c-basic-offset: 3 -*- */
|
2
|
|
-/*================================================================
|
|
1
|
+/*!
|
|
2
|
+ * \file include/BoundingVolume.h
|
|
3
|
+ * \brief Bounding volume class for world/vis/culling/clipping/collision stuff.
|
3
|
4
|
*
|
4
|
|
- * Project : libHel
|
5
|
|
- * Author : Terry 'Mongoose' Hendrix II
|
6
|
|
- * Website : http://www.westga.edu/~stu7440/
|
7
|
|
- * Email : stu7440@westga.edu
|
8
|
|
- * Object : BoundingVolume
|
9
|
|
- * License : No use w/o permission (C) 2002 Mongoose
|
10
|
|
- * Comments: Bounding volume class for world/vis
|
11
|
|
- * culling/clipping/collision stuff
|
12
|
|
- *
|
13
|
|
- *
|
14
|
|
- * This file was generated using Mongoose's C++
|
15
|
|
- * template generator script. <stu7440@westga.edu>
|
16
|
|
- *
|
17
|
|
- *-- Test Defines -----------------------------------------------
|
18
|
|
- *
|
19
|
|
- * UNIT_TEST_BOUNDINGVOLUME - Builds BoundingVolume class unit test
|
20
|
|
- *
|
21
|
|
- *-- History ------------------------------------------------
|
22
|
|
- *
|
23
|
|
- * 2002.11.27:
|
24
|
|
- * Mongoose - Created
|
25
|
|
- ================================================================*/
|
26
|
|
-
|
|
5
|
+ * \author Mongoose
|
|
6
|
+ */
|
27
|
7
|
|
28
|
8
|
#ifndef _BOUNDINGVOLUME_H_
|
29
|
9
|
#define _BOUNDINGVOLUME_H_
|
30
|
10
|
|
31
|
11
|
#include <MatMath.h>
|
32
|
12
|
|
33
|
|
-
|
34
|
|
-class BoundingSphere
|
35
|
|
-{
|
|
13
|
+/*!
|
|
14
|
+ * \brief Defines a 3D sphere.
|
|
15
|
+ */
|
|
16
|
+class BoundingSphere {
|
36
|
17
|
public:
|
37
|
|
- vec3_t mCenter; /* Center of bounding sphere */
|
38
|
|
-
|
39
|
|
- vec_t mRadius; /* Raduis of bounding sphere */
|
|
18
|
+ vec3_t mCenter; //!< Center of bounding sphere
|
|
19
|
+ vec_t mRadius; //!< Raduis of bounding sphere
|
40
|
20
|
};
|
41
|
21
|
|
42
|
|
-
|
43
|
|
-class BoundingBox
|
44
|
|
-{
|
|
22
|
+/*!
|
|
23
|
+ * \brief Defines a 3D rectangle.
|
|
24
|
+ */
|
|
25
|
+class BoundingBox {
|
45
|
26
|
public:
|
46
|
|
- vec3_t mMin; /* Bounding box MIN point */
|
47
|
|
-
|
48
|
|
- vec3_t mMax; /* Bounding box MAX point */
|
|
27
|
+ vec3_t mMin; //!< Bounding box MIN point
|
|
28
|
+ vec3_t mMax; //!< Bounding box MAX point
|
49
|
29
|
};
|
50
|
30
|
|
51
|
|
-
|
52
|
|
-class BoundingVolume
|
53
|
|
-{
|
54
|
|
- public:
|
55
|
|
-
|
56
|
|
- ////////////////////////////////////////////////////////////
|
57
|
|
- // Constructors
|
58
|
|
- ////////////////////////////////////////////////////////////
|
59
|
|
-
|
60
|
|
-
|
61
|
|
- ////////////////////////////////////////////////////////////
|
62
|
|
- // Public Accessors
|
63
|
|
- ////////////////////////////////////////////////////////////
|
64
|
|
-
|
65
|
|
-
|
66
|
|
- ////////////////////////////////////////////////////////////
|
67
|
|
- // Public Mutators
|
68
|
|
- ////////////////////////////////////////////////////////////
|
69
|
|
-
|
70
|
|
-
|
71
|
|
- BoundingSphere mSphere; /* Bounding sphere of this volume */
|
72
|
|
-
|
73
|
|
- BoundingBox mBox; /* Bounding box of this volume */
|
74
|
|
-
|
75
|
|
- private:
|
76
|
|
-
|
77
|
|
- ////////////////////////////////////////////////////////////
|
78
|
|
- // Private Accessors
|
79
|
|
- ////////////////////////////////////////////////////////////
|
80
|
|
-
|
81
|
|
-
|
82
|
|
- ////////////////////////////////////////////////////////////
|
83
|
|
- // Private Mutators
|
84
|
|
- ////////////////////////////////////////////////////////////
|
85
|
|
-
|
86
|
|
-
|
87
|
|
- /* */
|
|
31
|
+/*!
|
|
32
|
+ * \brief Defines a 3D sphere and/or rectangle.
|
|
33
|
+ */
|
|
34
|
+class BoundingVolume {
|
|
35
|
+public:
|
|
36
|
+ BoundingSphere mSphere; //!< Bounding sphere of this volume
|
|
37
|
+ BoundingBox mBox; //!< Bounding box of this volume
|
88
|
38
|
};
|
89
|
39
|
|
90
|
40
|
#endif
|