From 70ea8877ace50d2ce609d7d5f721c887b0ea83ec Mon Sep 17 00:00:00 2001 From: Logan Hunt Date: Wed, 12 Aug 2020 14:13:50 -0600 Subject: Added files --- src/point.cpp | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 src/point.cpp (limited to 'src/point.cpp') diff --git a/src/point.cpp b/src/point.cpp new file mode 100644 index 0000000..4008da6 --- /dev/null +++ b/src/point.cpp @@ -0,0 +1,58 @@ + +#include "point.h" +#include + +/****************************************** + * POINT : CONSTRUCTOR WITH X,Y + * Initialize the point to the passed position + *****************************************/ +Point::Point(float x, float y) : x(0.0), y(0.0) +{ + setX(x); + setY(y); +} + +/******************************************* + * POINT : SET X + * Set the x position if the value is within range + *******************************************/ +void Point::setX(float x) +{ + this->x = x; +} + +/******************************************* + * POINT : SET Y + * Set the y position if the value is within range + *******************************************/ +void Point::setY(float y) +{ + this->y = y; +} + +/****************************************** + * POINT insertion + * Display coordinates on the screen + *****************************************/ +std::ostream & operator << (std::ostream & out, const Point & pt) +{ + out << "(" << pt.getX() << ", " << pt.getY() << ")"; + return out; +} + +/******************************************* + * POINT extraction + * Prompt for coordinates + ******************************************/ +std::istream & operator >> (std::istream & in, Point & pt) +{ + float x; + float y; + in >> x >> y; + + pt.setX(x); + pt.setY(y); + + return in; +} + -- cgit v1.2.3-70-g09d2