From 34747fcb6a29ee573cf432611359ef34fe680dec Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Sat, 20 Dec 2008 14:53:40 +0000 Subject: added Vector2f distance functions --- src/math/vector2f.cc | 17 +++++++++++++++++ src/math/vector2f.h | 6 ++++++ 2 files changed, 23 insertions(+) (limited to 'src/math') diff --git a/src/math/vector2f.cc b/src/math/vector2f.cc index 809269e..2b5ff9e 100644 --- a/src/math/vector2f.cc +++ b/src/math/vector2f.cc @@ -63,4 +63,21 @@ Vector2f &Vector2f::operator-=(const Vector2f &other) return (*this); } +float distance(const Vector2f& first, const Vector2f& second) +{ + float r = 0; + for (int i=0; i < 2; i++) + r += (first[i]-second[i])*(first[i]-second[i]); + + return (sqrtf(r)); +} + +float distancesquared(const Vector2f& first, const Vector2f& second) +{ + float r = 0; + for (int i=0; i < 2; i++) + r += (first[i]-second[i])*(first[i]-second[i]); + return (r); +} + } diff --git a/src/math/vector2f.h b/src/math/vector2f.h index ee2d044..6258d85 100644 --- a/src/math/vector2f.h +++ b/src/math/vector2f.h @@ -109,6 +109,12 @@ private: float coord[2]; }; +/// distance between two vectors +float distance(const Vector2f& first, const Vector2f& second); + +/// distance between two vectors squared +float distancesquared(const Vector2f& first, const Vector2f& second); + } #endif // __INCLUDED_MATH_VECTOR2F_H__ -- cgit v1.2.3