Blame c++/vector/outlinearea.h
|
|
145120 |
#ifndef OUTLINEAREA_H
|
|
|
145120 |
#define OUTLINEAREA_H
|
|
|
145120 |
|
|
|
145120 |
|
|
|
145120 |
#include "activearea.h"
|
|
|
145120 |
#include "activecurve.h"
|
|
|
145120 |
|
|
|
145120 |
|
|
|
145120 |
class OutlineArea: public ActiveArea {
|
|
|
145120 |
protected:
|
|
|
145120 |
ActiveCurve curve;
|
|
|
145120 |
ActivePoint::Handle w;
|
|
|
145120 |
|
|
|
145120 |
Real get_width() const;
|
|
|
145120 |
void set_width(const Real &width);
|
|
|
145120 |
|
|
|
145120 |
void put_bezier(const Context &context, const Bezier &bezier, const Real &width = 0, bool jump = false);
|
|
|
145120 |
void put_hermite(const Context &context, const Hermite &hermite, const Real &width = 0, bool jump = false)
|
|
|
145120 |
{ put_bezier(context, hermite.get_bezier(), width, jump); }
|
|
|
145120 |
void put_curve(const Context &context, const ActiveCurve &curve, const Real &width);
|
|
|
145120 |
void draw_curve(const Context &context, const ActiveCurve &curve, const Real &width);
|
|
|
145120 |
|
|
|
145120 |
void on_point_move(const ActivePoint::Handle &point, const Vector &oldposition, const Vector &newposition) override;
|
|
|
145120 |
void on_draw_content(const Context &context) override;
|
|
|
145120 |
|
|
|
145120 |
public:
|
|
|
145120 |
OutlineArea();
|
|
|
145120 |
};
|
|
|
145120 |
|
|
|
145120 |
|
|
|
145120 |
#endif
|