public double Dot(Vector2i other) { return(X * other.X + Y * other.Y); }
public double EuclideanDistance(Vector2i other) { return((this - other).Length); }
public double ManhattanDistance(Vector2i other) { var diff = this - other; return(Math.Abs(diff.X) + Math.Abs(diff.Y)); }
protected CapturableObject(Vector2i location) : base(location) { Owner = null; }