In previous chapters, we have dealt with the 2D X and Y coordinates directly in our classes. I want to add a little bit of functionality that deals with our X and Y coordinates. For this, we are going to need to define a new class called Point. Eventually, Point will do more than what we are using it for here. But for right now, I would like to be able to create a Point object and be able to Rotate that point by an angle. Here is the class definition for Point that we have added to the game.hpp file:
class Point {
public:
float x;
float y;
Point();
Point( float X, float Y );
Point operator=(const Point& p);
void Rotate( float radians );
};
The first several functions and the operator= are pretty straightforward. They set the x and y attributes either through a constructor or by using a line of code such as point_1...