scsl 1.0.1
Shimmering Clarity Standard Library
Loading...
Searching...
No Matches
Orientation.h
Go to the documentation of this file.
1
23
24#include <cstdint>
25
26#include <scmp/geom/Vector.h>
27
28
29#ifndef SCMATH_GEOM_ORIENTATION_H
30#define SCMATH_GEOM_ORIENTATION_H
31
32
33namespace scmp {
34namespace geom {
35
36
40
43constexpr uint8_t BasisX = 0;
44
47constexpr uint8_t BasisY = 1;
48
51constexpr uint8_t BasisZ = 2;
52
53
55static const Vector2D Basis2D[] = {
56 Vector2D{1, 0},
57 Vector2D{0, 1},
58};
59
60
62static const Vector2F Basis2F[] = {
63 Vector2F{1, 0},
64 Vector2F{0, 1},
65};
66
67
69static const Vector3D Basis3D[] = {
70 Vector3D{1, 0, 0},
71 Vector3D{0, 1, 0},
72 Vector3D{0, 0, 1},
73};
74
75
77static const Vector3F Basis3F[] = {
78 Vector3F{1, 0, 0},
79 Vector3F{0, 1, 0},
80 Vector3F{0, 0, 1},
81};
82
83
89
95
101
107
108
109} // namespace geom
110} // namespace scmp
111
112
113#endif // SCMATH_GEOM_ORIENTATION_H
Linear algebraic vector class.
constexpr uint8_t BasisY
Convenience constant for the y index.
Definition Orientation.h:47
constexpr uint8_t BasisX
Convenience constant for the x index.
Definition Orientation.h:43
constexpr uint8_t BasisZ
Convenience constant for the z index.
Definition Orientation.h:51
Vector< float, 3 > Vector3F
Type alias for a three-dimensional float vector.
Definition Vector.h:482
Vector< double, 3 > Vector3D
Type alias for a three-dimensional double vector.
Definition Vector.h:494
Vector< float, 2 > Vector2F
Type alias for a two-dimensional float vector.
Definition Vector.h:478
float Heading2F(Vector2F vec)
Compass heading for a Vector2F.
Quaternionf MakeQuaternion(Vector3F axis, float angle)
Convenience Quaternion construction function.
double Heading2D(Vector2D vec)
Compass heading for a Vector2D.
double Heading3D(Vector3D vec)
float Heading3F(Vector3F vec)
Compass heading for a Vector2F.
Shimmering Clarity Math & Physics toolkit.
Definition estimation.h:31