| #pragma once |
| |
| |
| |
| |
| #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 |