Adjacency Data Structures - SplitEdge and Corner Data Structure


Adjacency Data Structures SplitEdge and Corner Data Structures

VIII. SplitEdge and Corner Data Structures

  1. HalfEdge Data Structure:


  2. SplitEdge Data Structure:


  3. Face and Vertex Loops:
    • Loop around a Face:
    •     SplitEdgeMesh::FaceLoop(SplitEdge *HE)
          {
              SplitEdge *loop = HE;
          
              do {
                  loop = loop->Next->Sym;
              } while (loop != HE);
          }
      
    • Loop around a Vertex:
    •     SplitEdgeMesh::VertexLoop(SplitEdge *HE)
          {
              SplitEdge *loop = HE;
          
              do {
                  loop = loop->Next;
              } while (loop != HE);
          }
      

  4. HalfEdge/SplitEdge Duality:
    • HalfEdgeMesh::VertexLoop() = SplitEdgeMesh::FaceLoop()
    • HalfEdgeMesh::FaceLoop() = SplitEdgeMesh::VertexLoop()
    • HalfEdge and SplitEdge are dual structures!

  5. Corner Data Structure:




  6. Corner Duality:
    • The Corner data structure is its own dual!


This page created and maintained by Justin Legakis
legakis@graphics.lcs.mit.edu
Last modified: 2/15/98