Update ooo320-m1
[ooovba.git] / filter / source / svg / b2dellipse.hxx
blob0708fdffad9aeb5e0533da109adc573b66ebb1c9
1 /*************************************************************************
3 * OpenOffice.org - a multi-platform office productivity suite
5 * Author:
6 * Fridrich Strba <fridrich.strba@bluewin.ch>
7 * Thorsten Behrens <tbehrens@novell.com>
9 * Copyright (C) 2008, Novell Inc.
11 * The Contents of this file are made available subject to
12 * the terms of GNU Lesser General Public License Version 2.1.
14 ************************************************************************/
16 #ifndef _BASEGFX_B2DELLIPSE_HXX
17 #define _BASEGFX_B2DELLIPSE_HXX
19 #include <sal/types.h>
21 #include <o3tl/cow_wrapper.hxx>
23 #include <basegfx/point/b2dpoint.hxx>
25 #include <basegfx/tuple/b2dtuple.hxx>
27 #include <basegfx/vector/b2enums.hxx>
29 //////////////////////////////////////////////////////////////////////////////
30 // predeclarations
31 class ImplB2DEllipse;
33 namespace basegfx
35 class B2DPoint;
36 class B2DVector;
37 class B2DHomMatrix;
38 } // end of namespace basegfx
40 //////////////////////////////////////////////////////////////////////////////
42 namespace basegfx
44 class B2DEllipse
46 private:
47 basegfx::B2DPoint maCenter;
48 basegfx::B2DTuple maRadius;
50 public:
51 B2DEllipse();
52 B2DEllipse(const B2DEllipse& rEllipse);
53 B2DEllipse(const basegfx::B2DPoint& rCenter, const basegfx::B2DTuple& rRadius);
54 ~B2DEllipse();
56 // assignment operator
57 B2DEllipse& operator=(const B2DEllipse& rEllipse);
59 // compare operators
60 bool operator==(const B2DEllipse& rEllipse) const;
61 bool operator!=(const B2DEllipse& rEllipse) const;
63 // Coordinate interface
64 basegfx::B2DPoint getB2DEllipseCenter() const;
65 void setB2DEllipseCenter(const basegfx::B2DPoint& rCenter);
67 basegfx::B2DTuple getB2DEllipseRadius() const;
68 void setB2DEllipseRadius(const basegfx::B2DTuple& rRadius);
70 // apply transformation given in matrix form to the Ellipse
71 void transform(const basegfx::B2DHomMatrix& rMatrix);
73 } // end of namespace basegfx
75 //////////////////////////////////////////////////////////////////////////////
77 #endif /* _BASEGFX_B2DELLIPSE_HXX */