diff options
Diffstat (limited to 'include/core/Quat.hpp')
-rw-r--r-- | include/core/Quat.hpp | 78 |
1 files changed, 40 insertions, 38 deletions
diff --git a/include/core/Quat.hpp b/include/core/Quat.hpp index 74bb136..314117d 100644 --- a/include/core/Quat.hpp +++ b/include/core/Quat.hpp @@ -9,10 +9,9 @@ namespace godot { -class Quat{ +class Quat { public: - - real_t x,y,z,w; + real_t x, y, z, w; real_t length_squared() const; real_t length() const; @@ -23,65 +22,68 @@ public: Quat inverse() const; - void set_euler_xyz(const Vector3& p_euler); + void set_euler_xyz(const Vector3 &p_euler); Vector3 get_euler_xyz() const; - void set_euler_yxz(const Vector3& p_euler); + void set_euler_yxz(const Vector3 &p_euler); Vector3 get_euler_yxz() const; - inline void set_euler(const Vector3& p_euler) { set_euler_yxz(p_euler); } + inline void set_euler(const Vector3 &p_euler) { set_euler_yxz(p_euler); } inline Vector3 get_euler() const { return get_euler_yxz(); } - real_t dot(const Quat& q) const; - - Quat slerp(const Quat& q, const real_t& t) const; - - Quat slerpni(const Quat& q, const real_t& t) const; - - Quat cubic_slerp(const Quat& q, const Quat& prep, const Quat& postq,const real_t& t) const; + real_t dot(const Quat &q) const; - void get_axis_and_angle(Vector3& r_axis, real_t &r_angle) const; + Quat slerp(const Quat &q, const real_t &t) const; - void operator*=(const Quat& q); - Quat operator*(const Quat& q) const; + Quat slerpni(const Quat &q, const real_t &t) const; + Quat cubic_slerp(const Quat &q, const Quat &prep, const Quat &postq, const real_t &t) const; + void get_axis_and_angle(Vector3 &r_axis, real_t &r_angle) const; - Quat operator*(const Vector3& v) const; + void operator*=(const Quat &q); + Quat operator*(const Quat &q) const; - Vector3 xform(const Vector3& v) const; + Quat operator*(const Vector3 &v) const; + Vector3 xform(const Vector3 &v) const; - void operator+=(const Quat& q); - void operator-=(const Quat& q); - void operator*=(const real_t& s); - void operator/=(const real_t& s); - Quat operator+(const Quat& q2) const; - Quat operator-(const Quat& q2) const; + void operator+=(const Quat &q); + void operator-=(const Quat &q); + void operator*=(const real_t &s); + void operator/=(const real_t &s); + Quat operator+(const Quat &q2) const; + Quat operator-(const Quat &q2) const; Quat operator-() const; - Quat operator*(const real_t& s) const; - Quat operator/(const real_t& s) const; + Quat operator*(const real_t &s) const; + Quat operator/(const real_t &s) const; - - bool operator==(const Quat& p_quat) const; - bool operator!=(const Quat& p_quat) const; + bool operator==(const Quat &p_quat) const; + bool operator!=(const Quat &p_quat) const; operator String() const; - inline void set( real_t p_x, real_t p_y, real_t p_z, real_t p_w) { - x=p_x; y=p_y; z=p_z; w=p_w; + inline void set(real_t p_x, real_t p_y, real_t p_z, real_t p_w) { + x = p_x; + y = p_y; + z = p_z; + w = p_w; } inline Quat(real_t p_x, real_t p_y, real_t p_z, real_t p_w) { - x=p_x; y=p_y; z=p_z; w=p_w; + x = p_x; + y = p_y; + z = p_z; + w = p_w; } - Quat(const Vector3& axis, const real_t& angle); - - Quat(const Vector3& v0, const Vector3& v1) ; + Quat(const Vector3 &axis, const real_t &angle); - inline Quat() {x=y=z=0; w=1; } + Quat(const Vector3 &v0, const Vector3 &v1); + inline Quat() { + x = y = z = 0; + w = 1; + } }; - -} +} // namespace godot #endif // QUAT_H |