1 //////////////////////////////////////////////////////////////////////////////
2 // Name:        SVGMatrix.h
3 // Author:      Alex Thuering
4 // Copyright:   (c) 2005 Alex Thuering
5 // Licence:     wxWindows licence
6 // Notes:       generated by generate.py
7 //////////////////////////////////////////////////////////////////////////////
8 
9 #ifndef WX_SVG_MATRIX_H
10 #define WX_SVG_MATRIX_H
11 
12 class wxSVGMatrix
13 {
14   protected:
15     double m_a;
16     double m_b;
17     double m_c;
18     double m_d;
19     double m_e;
20     double m_f;
21 
22   public:
GetA()23     inline double GetA() const { return m_a; }
SetA(double n)24     inline void SetA(double n) { m_a = n; }
25 
GetB()26     inline double GetB() const { return m_b; }
SetB(double n)27     inline void SetB(double n) { m_b = n; }
28 
GetC()29     inline double GetC() const { return m_c; }
SetC(double n)30     inline void SetC(double n) { m_c = n; }
31 
GetD()32     inline double GetD() const { return m_d; }
SetD(double n)33     inline void SetD(double n) { m_d = n; }
34 
GetE()35     inline double GetE() const { return m_e; }
SetE(double n)36     inline void SetE(double n) { m_e = n; }
37 
GetF()38     inline double GetF() const { return m_f; }
SetF(double n)39     inline void SetF(double n) { m_f = n; }
40 
41   public:
wxSVGMatrix()42     wxSVGMatrix(): m_a(1), m_b(0), m_c(0), m_d(1), m_e(0), m_f(0) {}
wxSVGMatrix(double a,double b,double c,double d,double e,double f)43     wxSVGMatrix(double a, double b, double c, double d, double e, double f):
44       m_a(a), m_b(b), m_c(c), m_d(d), m_e(e), m_f(f) {}
~wxSVGMatrix()45     virtual ~wxSVGMatrix() {}
46     virtual wxSVGMatrix Multiply(const wxSVGMatrix& secondMatrix) const;
47     virtual wxSVGMatrix Inverse() const;
48     virtual wxSVGMatrix Translate(double x, double y) const;
49     virtual wxSVGMatrix Scale(double scaleFactor) const;
50     virtual wxSVGMatrix ScaleNonUniform(double scaleFactorX, double scaleFactorY) const;
51     virtual wxSVGMatrix Rotate(double angle) const;
52     virtual wxSVGMatrix RotateFromVector(double x, double y) const;
53     virtual wxSVGMatrix FlipX() const;
54     virtual wxSVGMatrix FlipY() const;
55     virtual wxSVGMatrix SkewX(double angle) const;
56     virtual wxSVGMatrix SkewY(double angle) const;
57 };
58 
59 #endif // WX_SVG_MATRIX_H
60