24 lines
560 B
C++
24 lines
560 B
C++
#pragma once
|
|
|
|
#include <J3ML/LinearAlgebra.h>
|
|
#include <J3ML/LinearAlgebra/Vector3.h>
|
|
|
|
namespace LinearAlgebra
|
|
{
|
|
|
|
/// Transitional datatype, not useful for internal representation of rotation
|
|
/// But has uses for conversion and manipulation.
|
|
class AxisAngle {
|
|
Vector3 axis;
|
|
float angle;
|
|
public:
|
|
AxisAngle();
|
|
|
|
AxisAngle(const Vector3 &axis, float angle);
|
|
|
|
EulerAngle ToEulerAngleXYZ() const;
|
|
|
|
Quaternion ToQuaternion() const;
|
|
static AxisAngle FromEulerAngleXYZ(const EulerAngle&);
|
|
};
|
|
} |