#pragma once #include "Curve.h" #include "Point.h" class QuadraticBezierCurve : public Curve { public: QuadraticBezierCurve(const Point& startPoint, const Point& endPoint, const Point& controlPoint); Point getFirstPoint() const override; Point getEndPoint() const override; Bounds getBounds() const override; const Point& getLocation() const override; Type getType() const override; CurveType getCurveType() const override; void sample(SparseGrid* grid) const override; std::string toPostScriptString(std::size_t precision = 0) const override; private: Point mStartPoint; Point mEndPoint; Point mControlPoint; };