Back to index

extremetuxracer  0.5beta
FTContour.h
Go to the documentation of this file.
00001 #ifndef     __FTContour__
00002 #define     __FTContour__
00003 
00004 #include "FTPoint.h"
00005 #include "FTVector.h"
00006 #include "FTGL.h"
00007 
00008 
00018 class FTGL_EXPORT FTContour
00019 {
00020     public:
00028         FTContour( FT_Vector* contour, char* pointTags, unsigned int numberOfPoints);
00029 
00033         ~FTContour()
00034         {
00035             pointList.clear();
00036         }
00037         
00044         const FTPoint& Point( unsigned int index) const { return pointList[index];}
00045 
00051         size_t PointCount() const { return pointList.size();}
00052 
00053     private:
00060         inline void AddPoint( FTPoint point);
00061         
00062         inline void AddPoint( float x, float y);
00063         
00068         inline void evaluateQuadraticCurve();
00069 
00074         inline void evaluateCubicCurve();
00075 
00079         typedef FTVector<FTPoint> PointVector;
00080         PointVector pointList;
00081         
00085         float controlPoints[4][2];
00086 };
00087 
00088 #endif // __FTContour__