summaryrefslogtreecommitdiffstats
path: root/core/math/vector3i.h
diff options
context:
space:
mode:
authorJakub Marcowski <01158831@pw.edu.pl>2023-10-11 12:04:57 +0200
committerJakub Marcowski <01158831@pw.edu.pl>2023-10-12 13:46:49 +0200
commitcb954c6babccbd9fe59013d8ed14098df0cdf8af (patch)
tree71e4c80fac2ffe02a2bc086da2aae91e2bbf39cf /core/math/vector3i.h
parent9957f1ad4e24235a1266754bb8be9fbba5499141 (diff)
downloadredot-engine-cb954c6babccbd9fe59013d8ed14098df0cdf8af.tar.gz
Implement `Vector2i/3i/4i` methods: `distance_to` and `distance_squared_to`
Diffstat (limited to 'core/math/vector3i.h')
-rw-r--r--core/math/vector3i.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/core/math/vector3i.h b/core/math/vector3i.h
index 53d3829a99..5a5e9deda8 100644
--- a/core/math/vector3i.h
+++ b/core/math/vector3i.h
@@ -87,6 +87,9 @@ struct _NO_DISCARD_ Vector3i {
Vector3i clamp(const Vector3i &p_min, const Vector3i &p_max) const;
Vector3i snapped(const Vector3i &p_step) const;
+ _FORCE_INLINE_ double distance_to(const Vector3i &p_to) const;
+ _FORCE_INLINE_ int64_t distance_squared_to(const Vector3i &p_to) const;
+
/* Operators */
_FORCE_INLINE_ Vector3i &operator+=(const Vector3i &p_v);
@@ -143,6 +146,14 @@ Vector3i Vector3i::sign() const {
return Vector3i(SIGN(x), SIGN(y), SIGN(z));
}
+double Vector3i::distance_to(const Vector3i &p_to) const {
+ return (p_to - *this).length();
+}
+
+int64_t Vector3i::distance_squared_to(const Vector3i &p_to) const {
+ return (p_to - *this).length_squared();
+}
+
/* Operators */
Vector3i &Vector3i::operator+=(const Vector3i &p_v) {