1 /* libwpg
2 * Copyright (C) 2006 Ariya Hidayat (ariya@kde.org)
3 *
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Library General Public
6 * License as published by the Free Software Foundation; either
7 * version 2 of the License, or (at your option) any later version.
8 *
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Library General Public License for more details.
13 *
14 * You should have received a copy of the GNU Library General Public
15 * License along with this library; if not, write to the
16 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
17 * Boston, MA 02111-1301 USA
18 *
19 * For further information visit http://libwpg.sourceforge.net
20 */
22 /* "This product is not manufactured, approved, or supported by
23 * Corel Corporation or Corel Corporation Limited."
24 */
26 #ifndef __WPGPOINT_H__
27 #define __WPGPOINT_H__
29 #include "WPGColor.h"
31 namespace libwpg
32 {
34 class WPGPoint
35 {
36 public:
37 double x;
38 double y;
40 WPGPoint(): x(0.0), y(0.0) {}
42 WPGPoint(double xx, double yy): x(xx), y(yy) {}
44 WPGPoint(const WPGPoint& point)
45 { x = point.x; y = point.y; }
47 WPGPoint& operator=(const WPGPoint& point)
48 { x = point.x; y = point.y; return *this; }
49 };
51 class WPGPointArrayPrivate;
53 class WPGPointArray
54 {
55 public:
56 WPGPointArray();
57 ~WPGPointArray();
58 WPGPointArray(const WPGPointArray&);
59 WPGPointArray& operator=(const WPGPointArray&);
60 unsigned count() const;
61 WPGPoint& at(unsigned i);
62 const WPGPoint& at(unsigned i) const;
63 const WPGPoint& operator[](unsigned i) const;
64 void add(const WPGPoint& p);
66 private:
67 WPGPointArrayPrivate *d;
68 };
70 } // namespace libwpg
72 #endif // __WPGPOINT_H__