Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef POLYGON2D_H
00011 #define POLYGON2D_H
00012
00013 #include <vector>
00014
00015 class Polygon2D;
00016 class Point2D;
00017 class Line2D;
00018
00025 class Polygon2D
00026 {
00027 public:
00028
00029 inline Polygon2D() {}
00030
00035 inline Polygon2D ( std::vector<Point2D>& points )
00036 {
00037 m_Points = points;
00038 }
00039
00040 inline ~Polygon2D() {}
00041
00042 inline std::vector<Point2D> getPoints() const{
00043 return m_Points;
00044 }
00045
00050 std::vector<Line2D> getLines() const;
00051
00058 void clipLines ( std::vector<Line2D>& linesToClip ) const;
00059
00067 bool clipLine ( Line2D& lineToClip ) const;
00068
00069 private:
00070
00071 std::vector<Point2D> m_Points;
00072
00073 };
00074
00075 #endif
00076