From baef318193316fc365ba4b0a559c387d96b4305a Mon Sep 17 00:00:00 2001 From: Sam Anthony Date: Wed, 2 Oct 2024 16:31:31 -0400 Subject: refactor --- point.cpp | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 point.cpp (limited to 'point.cpp') diff --git a/point.cpp b/point.cpp new file mode 100644 index 0000000..099165d --- /dev/null +++ b/point.cpp @@ -0,0 +1,63 @@ +#include "balls.h" + +Point +addPt(Point p, Point q) { + p.x += q.x; + p.y += q.y; + return p; +} + +Point +subPt(Point p, Point q) { + p.x -= q.x; + p.y -=q.y; + return p; +} + +Point +ptAddVec(Point p, Vector v) { + p.x += v.x; + p.y += v.y; + return p; +} + +Point +ptSubVec(Point p, Vector v) { + p.x -= v.x; + p.y -= v.y; + return p; +} + +Point +ptMulS(Point p, double s) { + p.x *= s; + p.y *= s; + return p; +} + +Point +ptDivS(Point p, double s) { + p.x /= s; + p.y /=s; + return p; +} + +Point +Pt(double x, double y) { + Point p = {x, y}; + return p; +} + +Rectangle +insetRect(Rectangle r, double n) { + r.min.x += n; + r.min.y += n; + r.max.x -= n; + r.max.y -= n; + return r; +} + +Point +randPtInRect(Rectangle r) { + return Pt(randDouble(r.min.x, r.max.x), randDouble(r.min.y, r.max.y)); +} -- cgit v1.2.3