mConstants.h

Engine/source/math/mConstants.h

More...

Public Defines

define
M_2PI() (3.1415926535897932384626433 * 2.0)
define
M_2PI_F() (3.1415926535897932384626433f * 2.0f)
define
M_CONST_E_F() 2.7182818284590452353602874f
define
M_HALFPI() 1.57079632679489661923
define
M_HALFPI_F() 1.57079632679489661923f
define
M_PI() 3.14159265358979323846
define
M_PI_F() 3.14159265358979323846f
define
M_SQRT2() 1.41421356237309504880
define
M_SQRT2_F() 1.41421356237309504880f
define
M_SQRTHALF() 0.7071067811865475244008443
define
M_SQRTHALF_F() 0.7071067811865475244008443f
define
POINT_EPSILON() (0.0001f)

Epsilon for point types.

Public Enumerations

enum
OverlapTestResult {
  GeometryInside = 1
  GeometryIntersecting = 0
  GeometryOutside = -1
}

Result of an overlap test.

Detailed Description

Public Defines

M_2PI() (3.1415926535897932384626433 * 2.0)
M_2PI_F() (3.1415926535897932384626433f * 2.0f)
M_CONST_E_F() 2.7182818284590452353602874f
M_HALFPI() 1.57079632679489661923
M_HALFPI_F() 1.57079632679489661923f
M_PI() 3.14159265358979323846
M_PI_F() 3.14159265358979323846f
M_SQRT2() 1.41421356237309504880
M_SQRT2_F() 1.41421356237309504880f
M_SQRTHALF() 0.7071067811865475244008443
M_SQRTHALF_F() 0.7071067811865475244008443f
POINT_EPSILON() (0.0001f)

Epsilon for point types.

Public Enumerations

OverlapTestResult

Enumerator

GeometryInside = 1

Completely inside test volume/space.

GeometryIntersecting = 0

Partly inside and partly outside test volume/space.

GeometryOutside = -1

No overlap with test volume/space.

Result of an overlap test.

 1
 2//-----------------------------------------------------------------------------
 3// Copyright (c) 2012 GarageGames, LLC
 4//
 5// Permission is hereby granted, free of charge, to any person obtaining a copy
 6// of this software and associated documentation files (the "Software"), to
 7// deal in the Software without restriction, including without limitation the
 8// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 9// sell copies of the Software, and to permit persons to whom the Software is
10// furnished to do so, subject to the following conditions:
11//
12// The above copyright notice and this permission notice shall be included in
13// all copies or substantial portions of the Software.
14//
15// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
21// IN THE SOFTWARE.
22//-----------------------------------------------------------------------------
23
24#ifndef _MCONSTANTS_H_
25#define _MCONSTANTS_H_
26
27#undef M_PI
28#undef M_SQRT2
29
30#define M_PI         3.14159265358979323846
31#define M_SQRT2      1.41421356237309504880
32
33#define M_2PI        (3.1415926535897932384626433 * 2.0)
34#define M_SQRTHALF   0.7071067811865475244008443
35
36#define M_HALFPI     1.57079632679489661923
37
38#define M_PI_F         3.14159265358979323846f
39#define M_SQRT2_F      1.41421356237309504880f
40
41#define M_2PI_F        (3.1415926535897932384626433f * 2.0f)
42#define M_SQRTHALF_F   0.7071067811865475244008443f
43
44#define M_HALFPI_F     1.57079632679489661923f
45
46#define M_CONST_E_F    2.7182818284590452353602874f
47
48#define POINT_EPSILON (0.0001f) ///< Epsilon for point types.
49
50
51/// Result of an overlap test.
52enum OverlapTestResult
53{
54   GeometryInside = 1,          ///< Completely inside test volume/space.
55   GeometryIntersecting = 0,    ///< Partly inside and partly outside test volume/space.
56   GeometryOutside = -1         ///< No overlap with test volume/space.
57};
58
59#endif
60