summaryrefslogtreecommitdiffstats
path: root/core/math/basis.h
diff options
context:
space:
mode:
authorRémi Verschelde <remi@verschelde.fr>2022-01-05 16:05:40 +0100
committerGitHub <noreply@github.com>2022-01-05 16:05:40 +0100
commit6af77c7b090f9e49aa5176783bf7350f8f6ec2e2 (patch)
treea46a85b8ee4ea4cdeca267dcaf38670a62243cdf /core/math/basis.h
parentbb4157a9afbce9adfa95c69ee20442590d4d66de (diff)
parent61759da5b35e44003ab3ffe3d4024dd611d17eff (diff)
downloadredot-engine-6af77c7b090f9e49aa5176783bf7350f8f6ec2e2.tar.gz
Merge pull request #53684 from TokageItLab/orthogonal-mode
Diffstat (limited to 'core/math/basis.h')
-rw-r--r--core/math/basis.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/core/math/basis.h b/core/math/basis.h
index 48367631d5..709f2cb3cf 100644
--- a/core/math/basis.h
+++ b/core/math/basis.h
@@ -123,6 +123,9 @@ public:
void scale_local(const Vector3 &p_scale);
Basis scaled_local(const Vector3 &p_scale) const;
+ void scale_orthogonal(const Vector3 &p_scale);
+ Basis scaled_orthogonal(const Vector3 &p_scale) const;
+
void make_scale_uniform();
float get_uniform_scale() const;
@@ -168,6 +171,7 @@ public:
bool is_diagonal() const;
bool is_rotation() const;
+ Basis lerp(const Basis &p_to, const real_t &p_weight) const;
Basis slerp(const Basis &p_to, const real_t &p_weight) const;
void rotate_sh(real_t *p_values);
@@ -233,6 +237,9 @@ public:
void orthonormalize();
Basis orthonormalized() const;
+ void orthogonalize();
+ Basis orthogonalized() const;
+
#ifdef MATH_CHECKS
bool is_symmetric() const;
#endif