00001 #ifndef _DLMEDIALAXIS_H_
00002 #define _DLMEDIALAXIS_H_
00003
00004 #include "DLImage.h"
00005
00006
00007
00011 class DLMedialAxis
00012 {
00013
00014 public:
00019 DLMedialAxis();
00020
00024 DLMedialAxis(const DLMedialAxis & orig);
00025
00030 const DLMedialAxis & operator=(const DLMedialAxis & right);
00031
00035 virtual ~DLMedialAxis();
00038
00039
00040
00041
00042
00043
00056 static DLImage dlGetChessboardMedialAxisTransform(const DLImage& theImage);
00057
00070 static DLImage dlGetTaxiCabMedialAxisTransform(const DLImage & theImage);
00071
00072 private:
00073
00074 static int dlGetChessboardDistance(const DLImage& theImage,int xCoord,int yCoord);
00075 static int dlGetTaxiCabDistance(const DLImage & theImage,int xCoord,int yCoord);
00076 static bool outOfBounds(int xCoord, int yCoord, int picHeight, int picWidth);
00077 static bool whitePixOnBdr(const DLImage& theImage,int xCoord,int yCoord,int dist);
00078
00079 };
00080
00081 #endif //_DLMEDIALAXIS_H_