| 12345678910111213141516171819202122232425262728293031323334353637383940414243 |
- require("vec3")
- local ffi = require("ffi")
- ffi.cdef
- [[
- typedef struct
- {
- Vec3 v;
- float w;
- } Quat;
- Quat& quat(float angle, const Vec3& v);
- void quat_negate(Quat& self);
- void quat_load_identity(Quat& self);
- float quat_length(Quat& self);
- void quat_conjugate(Quat& self);
- Quat& quat_inverse(Quat& self);
- Quat& quat_cross(Quat& self, const Quat& b);
- Quat& quat_multiply(Quat& self, const float& k);
- Quat& quat_power(Quat& self, float exp);
- ]]
- Quat = {}
- Quat.quat = lib.quat
- Quat.negate = lib.quat_negate
- Quat.load_identity = lib.quat_load_identity
- Quat.length = lib.quat_length
- Quat.conjugate = lib.quat_conjugate
- Quat.inverse = lib.quat_inverse
- Quat.cross = lib.quat_cross
- Quat.multiply = lib.quat_multiply
- Quat.power = lib.quat_power
|