diff options
Diffstat (limited to 'dev/a2-carsoccer/ball.h')
-rw-r--r-- | dev/a2-carsoccer/ball.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/dev/a2-carsoccer/ball.h b/dev/a2-carsoccer/ball.h new file mode 100644 index 0000000..0fa107e --- /dev/null +++ b/dev/a2-carsoccer/ball.h @@ -0,0 +1,39 @@ +/** CSci-4611 Assignment 2: Car Soccer + */ + +#ifndef BALL_H_ +#define BALL_H_ + +#include <mingfx.h> +using namespace mingfx; + +/// Small class representing the ball. Feel free to add additional member variables and functions if you wish. +class Ball { +public: + + Ball(); + virtual ~Ball(); + + // The same radius is used to draw the ball and to calculate physics for the ball + float radius(); + + // Current 3D position + Point3 position(); + void set_position(const Point3 &p); + + // Current 3D velocity + Vector3 velocity(); + void set_velocity(const Vector3 &v); + + // Resets the ball's position and velocity to initial values. + void Reset(); + + void Draw(QuickShapes quickShapes, Matrix4 modelMatrix, Matrix4 viewMatrix, Matrix4 projMatrix); + +private: + Point3 position_; + Vector3 velocity_; + float radius_; +}; + +#endif |