From e17990bab75fd922bd0d497d7d6c8a25e9bf63fd Mon Sep 17 00:00:00 2001 From: Gaia Clary Date: Tue, 28 May 2019 08:45:28 +0200 Subject: refactor Collada: Add new class Quat (wip) --- source/blender/collada/BCMatrix.h | 36 ++++++++++++++++++++++++++++++++--- source/blender/collada/BlenderTypes.h | 1 + 2 files changed, 34 insertions(+), 3 deletions(-) (limited to 'source/blender/collada') diff --git a/source/blender/collada/BCMatrix.h b/source/blender/collada/BCMatrix.h index b1d89081f27..63f84d2fd3d 100644 --- a/source/blender/collada/BCMatrix.h +++ b/source/blender/collada/BCMatrix.h @@ -14,15 +14,45 @@ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */ - /** \file - * \ingroup collada - */ +/** \file + * \ingroup collada + */ #ifndef __BCMATRIX_H__ #define __BCMATRIX_H__ #include "BlenderTypes.h" #include "BKE_object.h" +#include "BLI_math.h" + +class BCQuat { + private: + mutable Quat q; + + void unit(); + void copy(Quat &r, Quat &a); + + public: + BCQuat(const BCQuat &other) + { + copy_v4_v4(q, other.q); + } + + BCQuat(Quat &other) + { + copy_v4_v4(q, other); + } + + BCQuat() + { + unit_qt(q); + } + + Quat &quat() + { + return q; + } +}; class BCMatrix { diff --git a/source/blender/collada/BlenderTypes.h b/source/blender/collada/BlenderTypes.h index 2b0a479fa07..22ad9b8c1e0 100644 --- a/source/blender/collada/BlenderTypes.h +++ b/source/blender/collada/BlenderTypes.h @@ -22,6 +22,7 @@ #define __BLENDERTYPES_H__ typedef float(Vector)[3]; +typedef float(Quat)[4]; typedef float(Matrix)[4][4]; typedef double(DMatrix)[4][4]; -- cgit v1.2.3