#include "Vec2d.h" #ifndef SHAPE_H_ #define SHAPE_H_ #define PI 3.14159265358979 class Shape { public: virtual void draw(); // pure virtual function }; class Star{ private: float innerRadius, outerRadius; int numOfPts; Vec2d center; Vec2d vec; public: Star(float pInnerRadius, float pOuterRadius, int pNumOfPts, Vec2d pCenter); void draw(int type, bool useCenter = false, bool repeatFirstVec = false); }; class Oval{ private: float vRadius, hRadius; int numOfPts; Vec2d center; Vec2d vec; Vec2d* vecArray; public: Oval(float pVRadius, float pHRadius, int pNumOfPts, Vec2d pCenter); Vec2d* getVecs(); void draw(int type, bool useCenter = false, bool repeatFirstVec = false); }; class Circle{ //: public DrawShape { private: float radius; int numOfPts; Vec2d center; Vec2d vec; Vec2d* vecArray; public: Circle(float radius, int numOfPts, Vec2d center); void draw(int type, bool useCenter = false, bool repeatFirstVec = false); Vec2d* getVecs(); }; #endif /*SHAPE_H_*/