00001 #ifndef _MY_OrthoVerticeAccessor_ 00002 #define _MY_OrthoVerticeAccessor_ 00003 00004 00009 class OrthoVerticeAccessor 00010 { 00011 private: 00012 00013 protected: 00014 const OrthoMesh *m_mesh; 00015 unsigned m_i,m_j,m_k,m_index; 00016 00017 public: 00018 OrthoVerticeAccessor(const OrthoMesh &mesh,unsigned index); 00019 void operator++(int); 00020 bool operator!= (OrthoVerticeAccessor &vert) const {return m_index != vert.m_index;} 00021 00022 Point3D getPoint(); 00023 bool isValid(); 00024 ~OrthoVerticeAccessor(){} 00025 unsigned index(){return m_index;} 00026 00027 unsigned index_left() const; 00028 unsigned index_right() const; 00029 unsigned index_up() const; 00030 unsigned index_bottom() const; 00031 unsigned index_front() const; 00032 unsigned index_back() const; 00033 bool at_boundary() const; 00034 00035 }; 00036 00037 #endif