Line 205... |
Line 205... |
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 |
|
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);
|
- |
|
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
|
214 |
Vec& pos(VertexID id);
|
231 |
Vec& pos(VertexID id);
|