Subversion Repositories gelsvn

Rev

Blame | Last modification | View Log | RSS feed

#ifndef __HALFEDGE_H
#define __HALFEDGE_H

#include "templates.h"

namespace HMesh
{

        typedef HalfEdge_template<Iters> HalfEdge;
        typedef Iters::HalfEdgeList HalfEdgeList;
        typedef Iters::HalfEdgeIter HalfEdgeIter;


        /** Null Element for halfedge lists. This is used as the value of an iterator
                        that points to nothing. */
        extern HalfEdgeIter NULL_HALFEDGE_ITER;

        /** Set the next and prev pointers of the first and second argument 
                        respectively. */
        void link(HalfEdgeIter, HalfEdgeIter);

        /** Glue halfedges by letting the opp pointers point to each other. */
        void glue(HalfEdgeIter, HalfEdgeIter);

        /// Return the geometric length of a halfedge.
        float length(HalfEdgeIter);

}
#endif