00001 #include "orthomesh.h" 00002 00003 00004 OrthoVerticeAccessorWithHoles::OrthoVerticeAccessorWithHoles(const OrthoMesh &mesh,unsigned rawIndex) 00005 :OrthoVerticeAccessor(mesh,rawIndex) 00006 { 00007 m_delIt = m_mesh->_delVertLst.findLUEntry(rawIndex); 00008 m_newIndex=rawIndex-m_delIt->off(); 00009 } 00010 00011 00012 00013 00014 00015 void OrthoVerticeAccessorWithHoles::operator++(int) 00016 { 00017 OrthoVerticeAccessor &rawVert = *this; 00018 rawVert++; 00019 if (rawVert.index() < m_delIt->index()) 00020 m_newIndex=rawVert.index()-m_delIt->off(); 00021 else 00022 { 00023 do { 00024 rawVert++; 00025 m_delIt++; 00026 }while (m_delIt->index() == rawVert.index()); 00027 m_newIndex=rawVert.index()-m_delIt->off(); 00028 } 00029 }