2018-10-06 20:39:40 -07:00
|
|
|
#pragma once
|
2015-04-19 13:39:16 -07:00
|
|
|
|
|
|
|
#include "Global.hpp"
|
2016-03-04 15:03:26 -08:00
|
|
|
#include "zeus/CVector3f.hpp"
|
2015-10-25 12:31:41 -07:00
|
|
|
#include "CUnitVector.hpp"
|
2015-04-19 13:39:16 -07:00
|
|
|
|
2018-12-07 17:16:50 -08:00
|
|
|
namespace zeus {
|
|
|
|
struct CAxisAngle : CVector3f {
|
|
|
|
CAxisAngle() = default;
|
|
|
|
CAxisAngle(float x, float y, float z) : CVector3f(x, y, z) {}
|
|
|
|
CAxisAngle(const CUnitVector3f& axis, float angle) : CVector3f(angle * axis) {}
|
|
|
|
CAxisAngle(const CVector3f& axisAngle) : CVector3f(axisAngle) {}
|
|
|
|
float angle() const { return magnitude(); }
|
|
|
|
const CVector3f& getVector() const { return *this; }
|
|
|
|
static const CAxisAngle sIdentity;
|
2015-04-19 13:39:16 -07:00
|
|
|
};
|
2018-12-07 21:23:50 -08:00
|
|
|
} // namespace zeus
|