| |
| |
|
|
| |
| |
| #ifndef TBRUSH_H |
| #define TBRUSH_H |
| |
| #ifdef PER_VECCHIO_ELLIPTIC_BRUSH |
| |
| #include "tcommon.h" |
| |
| #undef DVAPI |
| #undef DVVAR |
| |
| #ifdef TVRENDER_EXPORTS |
| #define DVAPI DV_EXPORT_API |
| #define DVVAR DV_EXPORT_VAR |
| #else |
| #define DVAPI DV_IMPORT_API |
| #define DVVAR DV_IMPORT_VAR |
| #endif |
| |
| |
| class TStroke; |
| class TStrokeOutline; |
| |
| |
| |
| class DVAPI TBrush |
| { |
| public: |
| class OutlineParameter |
| { |
| public: |
| |
| double m_lengthStep; |
| |
| |
| OutlineParameter( double lengthStep = 0) |
| |
| : m_lengthStep(lengthStep) |
| { |
| } |
| }; |
| |
| TBrush() {} |
| virtual ~TBrush() {} |
| |
| virtual void makeOutline(const TStroke &stroke, |
| TStrokeOutline &outline, |
| const OutlineParameter ¶m) = 0; |
| |
| virtual void draw() = 0; |
| virtual TBrush *clone() = 0; |
| }; |
| #endif |
| |
| #endif |
| |