00001 #ifndef __HALF_EDGE_H__ 00002 #define __HALF_EDGE_H__ 00003 00004 namespace lssr 00005 { 00006 00010 template<typename HVertexT, typename FaceT> 00011 class HalfEdge{ 00012 public: 00013 00017 HalfEdge() : start(0), end(0), pair(0), next(0), face(0), used(false) {}; 00018 00022 ~HalfEdge() 00023 { 00024 delete next; 00025 delete pair; 00026 } 00027 00029 HalfEdge<HVertexT, FaceT>* next; 00030 00032 HalfEdge<HVertexT, FaceT>* pair; 00033 00035 HVertexT* start; 00036 00038 HVertexT* end; 00039 00041 FaceT* face; 00042 00044 bool used; 00045 }; 00046 00047 } // namespace lssr 00048 00049 #endif