| #pragma once |
| |
| #ifndef ZIGZAG_STROKE_STYLE_H |
| #define ZIGZAG_STROKE_STYLE_H |
| |
| #include "tpixel.h" |
| |
| #ifdef POICIPENSO |
| |
| class TZigzagStrokeStyle : public TStrokeStyle |
| { |
| TPixel32 m_color; |
| double m_density; |
| |
| public: |
| TZigzagStrokeStyle(const TPixel32 &color); |
| TZigzagStrokeStyle(); |
| |
| void invalidate() {} |
| |
| void changeParameter(double delta); |
| TStrokeStyle *clone() const; |
| |
| void draw(double pixelSize, const TColorFunction * = 0); |
| |
| void loadData(TInputStreamInterface &is) { is >> m_color >> m_density; } |
| void saveData(TOutputStreamInterface &os) const { os << m_color << m_density; } |
| bool isSaveSupported() { return true; } |
| |
| int getTagId() const { return 115; }; |
| bool operator==(const TStrokeStyle &style) const |
| { |
| if (getTagId() != style.getTagId()) |
| return false; |
| return m_color == ((TZigzagStrokeStyle &)style).m_color && |
| m_density == ((TZigzagStrokeStyle &)style).m_density; |
| } |
| }; |
| |
| class TImageBasedZigzagStrokeStyle : public TStrokeStyle |
| { |
| TPixel32 m_color; |
| double m_textScale; |
| TRaster32P m_texture; |
| |
| public: |
| TImageBasedZigzagStrokeStyle(const TPixel32 &color); |
| TImageBasedZigzagStrokeStyle(); |
| TImageBasedZigzagStrokeStyle(const TRaster32P texture); |
| |
| void invalidate() {} |
| inline int realTextCoord(const int a, const int l) const; |
| |
| void changeParameter(double delta); |
| TStrokeStyle *clone() const; |
| |
| void draw(double pixelSize, const TColorFunction * = 0); |
| |
| void loadData(TInputStreamInterface &is) { is >> m_color >> m_textScale; } |
| void saveData(TOutputStreamInterface &os) const { os << m_color << m_textScale; } |
| bool isSaveSupported() { return true; } |
| |
| int getTagId() const { return 116; }; |
| bool operator==(const TStrokeStyle &style) const |
| { |
| if (getTagId() != style.getTagId()) |
| return false; |
| return m_color == ((TImageBasedZigzagStrokeStyle &)style).m_color && |
| m_textScale == ((TImageBasedZigzagStrokeStyle &)style).m_textScale; |
| } |
| }; |
| |
| #endif |
| |
| #endif |