diff --git a/a8/vec2.cc b/a8/vec2.cc index 00e1075..bf27a79 100644 --- a/a8/vec2.cc +++ b/a8/vec2.cc @@ -98,6 +98,12 @@ namespace a8 return v.Norm(); } + float Vec2::ManhattanDistance(const Vec2& b) + { + float distance = std::fabs(x - b.x) + std::fabs(y - b.y); + return distance; + } + Vec2 Vec2::Perp() { return Vec2(y, -x); diff --git a/a8/vec2.h b/a8/vec2.h index d6141d4..a8bd245 100644 --- a/a8/vec2.h +++ b/a8/vec2.h @@ -16,6 +16,7 @@ namespace a8 float CalcAngleEx(const Vec2& b); static Vec2 FromAngle(float angle); float Distance(const Vec2& b); + float ManhattanDistance(const Vec2& b); bool operator == (const Vec2& b) const; Vec2 operator + (const Vec2& b) const;