32 lines
694 B
C++
32 lines
694 B
C++
#pragma once
|
|
|
|
#include "Curve.h"
|
|
#include "Point.h"
|
|
|
|
class CubicBezierCurve : public Curve
|
|
{
|
|
public:
|
|
CubicBezierCurve(const Point& startPoint, const Point& endPoint, const Point& startControlPoint, const Point& endControlPoint);
|
|
|
|
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<bool>*) const override;
|
|
|
|
std::string toPostScriptString(std::size_t precision = 0) const override;
|
|
|
|
private:
|
|
Point mStartPoint;
|
|
Point mEndPoint;
|
|
Point mStartControlPoint;
|
|
Point mEndControlPoint;
|
|
};
|