Subversion Repositories gelsvn

Rev

Rev 646 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 646 Rev 657
Line 204... Line 204...
204
 
204
 
205
        /** \brief Close hole given by the invalid face of halfedgehandle h.
205
        /** \brief Close hole given by the invalid face of halfedgehandle h.
206
         returns FaceID of the created face or the face that is already there if the 
206
         returns FaceID of the created face or the face that is already there if the 
207
         face was not InvalidFaceID. */
207
         face was not InvalidFaceID. */
208
        FaceID close_hole(HalfEdgeID h);
208
        FaceID close_hole(HalfEdgeID h);
-
 
209
        
-
 
210
        /** \brief Create hole by opening a slit at a vertex.
-
 
211
        This function creates a hole by slitting the mesh at a vertex v along a pair of halfedges.
-
 
212
        The function returns the vertex created by this operation.
-
 
213
        The first halfedge h_in is oriented towards the vertex and the second, h_out, away from the 
-
 
214
        vertex. Neither h_in nor h_out may be boundary halfedges for a hole since the result would be
-
 
215
        two holes separated by an edge. That is an abomination we should avoid. In particular because
-
 
216
        it would be invisible. h_in and h_out also should not be each other's opposite edges. That would 
-
 
217
         result in an isolated vertex. */
-
 
218
         VertexID slit_vertex(VertexID v, HalfEdgeID h_in, HalfEdgeID h_out);
-
 
219
        
-
 
220
        /** \brief Create hole by slitting open the mesh along the path given as argument.
-
 
221
         This function returns the HalfEdgeID of one of the halfedges bounding the created hole.
-
 
222
         The path is specified as a selection set of vertices. If the selected vertices form a closed 
-
 
223
         loop, a piece is cut off from the mesh. Surprising results can occur if the selected vertices
-
 
224
         can be connected by more than one sequence (or a self intersecting sequence) of edges. */
-
 
225
        HalfEdgeID slit_edges(VertexAttributeVector<int>& selection);
209
 
226
 
210
        /// \brief Flip an edge h. 
227
        /// \brief Flip an edge h. 
211
        void flip_edge(HalfEdgeID h);
228
        void flip_edge(HalfEdgeID h);
212
 
229
 
213
        /// Return reference to position given by VertexID
230
        /// Return reference to position given by VertexID