Overte C++ Documentation
BoxBase.h
1
//
2
// BoxBase.h
3
// libraries/octree/src
4
//
5
// Created by Brad Hefta-Gaub on 04/11/13.
6
// Copyright 2013 High Fidelity, Inc.
7
//
8
// Originally from lighthouse3d. Modified to utilize glm::vec3 and clean up to our coding standards
9
// Simple axis aligned box class.
10
//
11
// Distributed under the Apache License, Version 2.0.
12
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
13
//
14
15
#ifndef hifi_BoxBase_h
16
#define hifi_BoxBase_h
17
18
#include <glm/glm.hpp>
19
#include <QString>
20
21
/*@jsdoc
22
* <p>A <code>BoxFace</code> specifies the face of an axis-aligned (AA) box.
23
* <table>
24
* <thead>
25
* <tr><th>Value</th><th>Description</th></tr>
26
* </thead>
27
* <tbody>
28
* <tr><td><code>"MIN_X_FACE"</code></td><td>The minimum x-axis face.</td></tr>
29
* <tr><td><code>"MAX_X_FACE"</code></td><td>The maximum x-axis face.</td></tr>
30
* <tr><td><code>"MIN_Y_FACE"</code></td><td>The minimum y-axis face.</td></tr>
31
* <tr><td><code>"MAX_Y_FACE"</code></td><td>The maximum y-axis face.</td></tr>
32
* <tr><td><code>"MIN_Z_FACE"</code></td><td>The minimum z-axis face.</td></tr>
33
* <tr><td><code>"MAX_Z_FACE"</code></td><td>The maximum z-axis face.</td></tr>
34
* <tr><td><code>"UNKNOWN_FACE"</code></td><td>Unknown value.</td></tr>
35
* </tbody>
36
* </table>
37
* @typedef {string} BoxFace
38
*/
39
enum
BoxFace {
40
MIN_X_FACE,
41
MAX_X_FACE,
42
MIN_Y_FACE,
43
MAX_Y_FACE,
44
MIN_Z_FACE,
45
MAX_Z_FACE,
46
UNKNOWN_FACE
47
};
48
49
QString boxFaceToString(BoxFace face);
50
BoxFace boxFaceFromString(
const
QString& face);
51
52
enum
BoxVertex {
53
BOTTOM_LEFT_NEAR = 0,
54
BOTTOM_RIGHT_NEAR = 1,
55
TOP_RIGHT_NEAR = 2,
56
TOP_LEFT_NEAR = 3,
57
BOTTOM_LEFT_FAR = 4,
58
BOTTOM_RIGHT_FAR = 5,
59
TOP_RIGHT_FAR = 6,
60
TOP_LEFT_FAR = 7
61
};
62
63
const
int
FACE_COUNT = 6;
64
65
#endif
// hifi_BoxBase_h
libraries
shared
src
BoxBase.h
Generated by
1.9.1