7#include "software/geom/angle.h"
8#include "software/geom/vector.h"
63 void set(
double x,
double y);
134Point operator+(
const Point &p,
const Vector &v) __attribute__((warn_unused_result));
144Point operator+(
const Vector &v,
const Point &p) __attribute__((warn_unused_result));
154Point operator-(
const Point &p,
const Vector &v) __attribute__((warn_unused_result));
183Point operator-(
const Point &p) __attribute__((warn_unused_result));
193Vector operator-(
const Point &p,
const Point &q) __attribute__((warn_unused_result));
203std::ostream &operator<<(std::ostream &os,
const Point &p);
213bool operator==(
const Point &p,
const Point &q);
223bool operator!=(
const Point &p,
const Point &q);
232 struct hash<
Point> final
234 size_t operator()(
const Point &p)
const
237 return h(p.
x()) * 17 + h(p.
y());
Point rotate(const Angle &rot) const
Definition point.cpp:47
void setY(double y)
Definition point.cpp:32
Vector toVector() const
Definition point.cpp:42
double distanceFromOrigin() const
Definition point.cpp:37
double x() const
Definition point.cpp:11
Point & operator=(const Point &other)
Definition point.cpp:52
void setX(double x)
Definition point.cpp:27
double y() const
Definition point.cpp:16
Point()
Definition point.cpp:3
void set(double x, double y)
Definition point.cpp:21