123456789101112131415161718192021222324 |
- #ifndef CORE_QUATERNION_H
- #define CORE_QUATERNION_H
- #include "core/Vector.h"
- typedef struct {
- CoreVector3 xyz;
- float w;
- } CoreQuaternion;
- #define CORE_UNIT_QUATERNION ((CoreQuaternion){{{0.0f, 0.0f, 0.0f}}, 1.0f})
- CoreQuaternion* coreAxisAngleQ(CoreQuaternion* q, const CoreVector3* axis,
- float angle);
- CoreQuaternion* coreLerpQ(CoreQuaternion* q, const CoreQuaternion* a, float f,
- const CoreQuaternion* b);
- CoreQuaternion* coreMulSetQ(CoreQuaternion* q, const CoreQuaternion* other);
- CoreQuaternion* coreMulQ(CoreQuaternion* q, const CoreQuaternion* a,
- const CoreQuaternion* b);
- CoreVector3* coreMulQV3(CoreVector3* r, const CoreQuaternion* q,
- const CoreVector3* v);
- size_t coreToStringQ(const CoreQuaternion* q, char* buffer, size_t n);
- #endif
|