blah/include/blah/math/point.h

41 lines
877 B
C++

#pragma once
namespace Blah
{
struct Point
{
int x;
int y;
Point();
Point(int px, int py);
Point operator +(const Point rhs) const;
Point operator -(const Point rhs) const;
Point operator /(const int rhs) const;
Point operator *(const int rhs) const;
Point operator -() const;
Point& operator +=(const Point& rhs);
Point& operator -=(const Point& rhs);
Point& operator /=(const Point& rhs);
Point& operator *=(const Point& rhs);
Point& operator /=(int rhs);
Point& operator *=(int rhs);
bool operator ==(const Point& rhs);
bool operator !=(const Point& rhs);
float length() const;
int length_squared() const;
static const Point unitX;
static const Point unitY;
static const Point right;
static const Point up;
static const Point down;
static const Point left;
static const Point zero;
static const Point one;
};
}