00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00025
00026 #ifndef _TRIANGULATOR_H_
00027 #define _TRIANGULATOR_H_
00028
00029 #include <vector>
00030
00031 #include "Point.h"
00032 #include "Line.h"
00033
00034 namespace LetterCDT
00035 {
00036
00039 class Triangulator
00040 {
00041 public:
00046 Triangulator(const std::vector<Line>& segments,
00047 const std::vector<int>& contours,
00048 const std::vector<Point>& holes);
00049
00051 ~Triangulator(void);
00052
00055 const std::vector<int>& GetIndices(void) const;
00056
00057 private:
00059 std::vector<int> m_indices;
00060
00062 Triangulator(const Triangulator&);
00063
00065 Triangulator& operator=(const Triangulator&);
00066
00071 void Triangulate(const std::vector<Line>& segments,
00072 const std::vector<int>& contours,
00073 const std::vector<Point>& holes);
00074 };
00075
00076 }
00077
00078 #endif