Namespaces | Classes | Enumerations | Functions
ionMath

Description

ionMath provides vector classes and various geometric primitives.

Namespaces

 Constants32
 
 Constants64
 
 Colors
 Some very basic colors.
 

Classes

struct  Constants< T >
 Template-friendly access to Constants32 or Constants64. More...
 
class  ray3< T >
 3D ray More...
 
class  SBoundingBox3< T, Vector >
 3D axis-aligned bounding box More...
 
struct  Color::Full< T >
 Determines the maximum color value for a given type. More...
 
struct  Color::Convert< T, U >
 Implements a conversion between two color types. More...
 
class  color3< T >
 Customized variant of vec3 that intelligently handles conversion between floating point and integer colors. More...
 
class  SColorA< T >
 Customized variant of vec4 that intelligently handles conversion between floating point and integer colors. More...
 
struct  Color::Pack
 Packs a color into 24 bits. More...
 
struct  Color::Unpack
 Unacks a color from 24 bits. More...
 
class  SLine3< T, Vector >
 3D line segment More...
 
class  SPlane3< T, Vector >
 3D plane More...
 
class  SRect2< T >
 2D rectangle More...
 
class  STransformation3
 Describes a 3D transformation as a composed translation, rotation, and scale. More...
 
class  STriangle2< T >
 2D triangle More...
 
class  STriangle3< T >
 3D triangle More...
 
struct  vec2< T >
 2D vector More...
 
struct  vec3< T >
 3D vector More...
 
class  SVector4< T >
 4D vector More...
 

Enumerations

enum  ETransformationOrder {
  ETransformationOrder::TranslationRotationScale, ETransformationOrder::TranslationScaleRotation, ETransformationOrder::RotationScaleTranslation, ETransformationOrder::RotationTranslationScale,
  ETransformationOrder::ScaleTranslationRotation, ETransformationOrder::ScaleRotationTranslation
}
 Order of transformations used by STransformation3. More...
 
enum  ERotationOrder {
  ERotationOrder::ZYX, ERotationOrder::ZXY, ERotationOrder::YXZ, ERotationOrder::YZX,
  ERotationOrder::XZY, ERotationOrder::XYZ
}
 Order of rotations, i.e. Euler angles, used by STransformation3. More...
 

Functions

template<typename T >
Abs (T const value)
 
template<typename T >
Sin (T const value)
 
template<typename T >
Cos (T const value)
 
template<typename T >
Tan (T const value)
 
template<typename T >
ArcTan (T const value)
 
template<typename T >
ArcTan (T const y, T const x)
 
template<typename T >
Sqrt (T const value)
 
template<typename T >
DegToRad (T const degrees)
 
template<typename T >
RadToDeg (T const radians)
 
template<typename T >
bool IsNaN (T const value)
 
template<typename T >
Saturate (T const value)
 Clamps a value between 0 and 1. More...
 

Enumeration Type Documentation

enum ERotationOrder
strong

Order of rotations, i.e. Euler angles, used by STransformation3.

Enumerator
ZYX 
ZXY 
YXZ 
YZX 
XZY 
XYZ 
enum ETransformationOrder
strong

Order of transformations used by STransformation3.

Enumerator
TranslationRotationScale 
TranslationScaleRotation 
RotationScaleTranslation 
RotationTranslationScale 
ScaleTranslationRotation 
ScaleRotationTranslation 

Function Documentation

template<typename T >
T Abs ( T const  value)
template<typename T >
T ArcTan ( T const  value)
template<typename T >
T ArcTan ( T const  y,
T const  x 
)
template<typename T >
T Cos ( T const  value)
template<typename T >
T DegToRad ( T const  degrees)
template<typename T >
bool IsNaN ( T const  value)
template<typename T >
T RadToDeg ( T const  radians)
template<typename T >
T Saturate ( T const  value)

Clamps a value between 0 and 1.

Returns
value clamped between 0 and 1
template<typename T >
T Sin ( T const  value)
template<typename T >
T Sqrt ( T const  value)
template<typename T >
T Tan ( T const  value)