00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00025 #ifndef _Site_H_
00026 #define _Site_H_
00027
00028 namespace EdgeAlgebra
00029 {
00030
00031 class QuadEdge;
00032
00033 class Site
00034 {
00035 public:
00036 float m_x;
00037
00038 float m_y;
00039
00040 Site(void);
00041
00042 Site(float x, float y);
00043
00044 Site(const Site& site);
00045
00046 ~Site(void);
00047
00048 Site& operator=(const Site& site);
00049
00050 bool CounterClockWise(Site* b, Site* c);
00051
00052 bool InCircle(Site* a, Site* b, Site* c);
00053
00054 bool RightOf(const QuadEdge& edge);
00055
00056 bool LeftOf(const QuadEdge& edge);
00057 };
00058
00059 bool SiteLessThan(EdgeAlgebra::Site* left, EdgeAlgebra::Site* right);
00060
00061 }
00062
00063 #endif