/* // This Source Code Form is subject to the terms of the Mozilla Public // License, v. 2.0.If a copy of the MPL was not distributed with this // file, You can obtain one at https ://mozilla.org/MPL/2.0/. #ifndef ANGLEAXIS_H #define ANGLEAXIS_H #include "Angle.h" #include "Direction.h" #include "Quaternion.h" namespace Passer { namespace LinearAlgebra { // Isn't this the same as SphericalOf ????????????? template class AngleAxisOf { public: float angle; DirectionOf axis; AngleAxisOf(); AngleAxisOf(float angle, DirectionOf axis); AngleAxisOf(Quaternion q); AngleAxisOf(float angle, Vector3 axis); const static AngleAxisOf zero; Quaternion ToQuaternion(); DirectionOf GetSwing(); }; using AngleAxisSingle = AngleAxisOf; using AngleAxis16 = AngleAxisOf; using AngleAxis = AngleAxisOf; } // namespace LinearAlgebra } // namespace Passer using namespace Passer::LinearAlgebra; #endif */