53 #ifndef MESHSELECTION_HH 54 #define MESHSELECTION_HH 83 template<
typename MeshT >
85 void selectVertices(MeshT* _mesh,
const std::vector< int >& _vertices);
92 template<
typename MeshT >
99 template<
typename MeshT >
106 template<
typename MeshT >
113 template<
typename MeshT >
121 template<
typename MeshT >
128 template<
typename MeshT >
135 template<
typename MeshT >
144 template<
typename MeshT >
153 template<
typename MeshT >
166 template<
typename MeshT >
175 template<
typename MeshT >
183 template<
typename MeshT >
192 template<
typename MeshT >
200 template<
typename MeshT >
209 template<
typename MeshT >
217 template<
typename MeshT >
225 template<
typename MeshT >
233 template<
typename MeshT >
241 template<
typename MeshT >
259 template<
typename MeshT >
261 void setArea(MeshT* _mesh,
const std::vector< int >& _vertices ,
unsigned int _type,
bool _state);
269 template<
typename MeshT >
271 void setArea(MeshT* _mesh ,
unsigned int _type,
bool _state);
275 template<
typename MeshT >
277 std::vector< int >
getArea(MeshT* _mesh,
unsigned int _type);
285 template<
typename MeshT >
287 std::vector< int >
getArea(MeshT* _mesh,
unsigned int _type ,
bool& _invert);
297 template<
typename MeshT >
299 void selectEdges(MeshT* _mesh,
const std::vector< int >& _edges,
const double _dihedral_angle_threshold = 0.0);
302 template<
typename MeshT >
304 void unselectEdges(MeshT* _mesh,
const std::vector< int >& _edges);
307 template<
typename MeshT >
312 template<
typename MeshT >
317 template<
typename MeshT >
322 template<
typename MeshT >
327 template<
typename MeshT >
332 template<
typename MeshT >
340 template<
typename MeshT >
349 template<
typename MeshT >
356 template<
typename MeshT >
365 template<
typename MeshT >
372 template<
typename MeshT >
379 template<
typename MeshT >
386 template<
typename MeshT >
393 template<
typename MeshT >
400 template<
typename MeshT >
413 template<
typename MeshT >
415 void selectHalfedges(MeshT* _mesh,
const std::vector< int >& _halfedges);
418 template<
typename MeshT >
423 template<
typename MeshT >
428 template<
typename MeshT >
433 template<
typename MeshT >
438 template<
typename MeshT >
443 template<
typename MeshT >
450 template<
typename MeshT >
457 template<
typename MeshT >
464 template<
typename MeshT >
474 template<
typename MeshT >
476 void selectFaces(MeshT* _mesh,
const std::vector< int >& _faces );
479 template<
typename MeshT >
481 void unselectFaces(MeshT* _mesh,
const std::vector< int >& _faces );
484 template<
typename MeshT >
489 template<
typename MeshT >
494 template<
typename MeshT >
499 template<
typename MeshT >
506 template<
typename MeshT >
514 template<
typename MeshT >
520 template<
typename MeshT >
529 template<
typename MeshT >
539 template<
typename MeshT >
546 template<
typename MeshT >
553 template<
typename MeshT >
560 template<
typename MeshT >
567 template<
typename MeshT >
574 template<
typename MeshT >
581 template<
typename MeshT >
590 #if defined(INCLUDE_TEMPLATES) && !defined(MESHSELECTION_C) 591 #define MESHSELECTION_TEMPLATES 592 #include "MeshSelectionT_impl.hh" 595 #endif // MESHSELECTION_HH defined void convertEdgeToHalfedgeSelection(MeshT *_mesh)
void unselectEdges(MeshT *_mesh, const std::vector< int > &_edges)
Unselect given edges of a mesh.
void convertEdgeToFaceSelection(MeshT *_mesh, const std::vector< int > &_edges)
void clearFeatureFaces(MeshT *_mesh)
void selectHalfedges(MeshT *_mesh, const std::vector< int > &_halfedges)
Select given edges of a mesh.
void invertHalfedgeSelection(MeshT *_mesh)
Invert Edge selection.
void selectAllEdges(MeshT *_mesh)
Select all edges of a mesh.
void clearFeatureVertices(MeshT *_mesh)
Clear all features.
void selectBoundaryEdges(MeshT *_mesh)
Select all boundary edges of a mesh.
void convertVertexSelectionToFeatureVertices(MeshT *_mesh)
Convert vertex selection to feature selection.
void growVertexSelection(MeshT *_mesh)
Grow vertex selection.
void selectAllHalfedges(MeshT *_mesh)
Select all edges of a mesh.
void convertFeatureVerticesToVertexSelection(MeshT *_mesh)
Convert feature selection to vertex selection.
void selectEdges(MeshT *_mesh, const std::vector< int > &_edges, const double _dihedral_angle_threshold=0.0)
Select given edges of a mesh.
void unselectHalfedges(MeshT *_mesh, const std::vector< int > &_halfedges)
Unselect given edges of a mesh.
void convertHalfedgeToVertexSelection(MeshT *_mesh)
void growEdgeSelection(MeshT *_mesh)
Invert Edge selection.
void selectAllVertices(MeshT *_mesh)
Select all vertices of a mesh.
void convertFaceToEdgeSelection(MeshT *_mesh)
void selectVertices(MeshT *_mesh, const std::vector< int > &_vertices)
Select given vertices of a mesh.
void invertEdgeSelection(MeshT *_mesh)
Invert Edge selection.
void clearHalfedgeSelection(MeshT *_mesh)
Set all edges to unselected.
void convertEdgeToVertexSelection(MeshT *_mesh, const std::vector< int > &_edges)
void shrinkVertexSelection(MeshT *_mesh)
Shrink vertex selection.
void convertVertexToHalfedgeSelection(MeshT *_mesh, const std::vector< int > &_vertices)
Select for each vertex in _vertices all incident halfedges.
std::vector< int > getFaceSelection(MeshT *_mesh)
void selectAllFaces(MeshT *_mesh)
Select all faces of a mesh.
std::vector< int > getHalfedgeSelection(MeshT *_mesh)
void clearEdgeSelection(MeshT *_mesh)
Set all edges to unselected.
void shrinkFaceSelection(MeshT *_mesh)
Shrink Face selection.
void selectBoundaryVertices(MeshT *_mesh)
Select all vertices of the mesh which are boundary vertices.
void clearVertexSelection(MeshT *_mesh)
Set all vertices to unselected.
void convertFaceSelectionToFeatureFaces(MeshT *_mesh)
void convertHalfedgeToFaceSelection(MeshT *_mesh)
void convertVertexToEdgeSelection(MeshT *_mesh, const std::vector< int > &_vertices)
Select for each vertex in _vertices all incident edges.
void unselectFaces(MeshT *_mesh, const std::vector< int > &_faces)
Unselect given faces of a mesh.
void convertFeatureEdgesToEdgeSelection(MeshT *_mesh)
void invertFaceSelection(MeshT *_mesh)
Invert face selection.
std::vector< int > getVertexSelection(MeshT *_mesh)
Get the current vertex selection.
void convertVertexToFaceSelection(MeshT *_mesh, const std::vector< int > &_vertices)
Select for each vertex in _vertices all adjacent faces.
void selectFaces(MeshT *_mesh, const std::vector< int > &_faces)
Select given faces of a mesh.
void convertFeatureFacesToFaceSelection(MeshT *_mesh)
void invertVertexSelection(MeshT *_mesh)
invert vertex selection
void growFaceSelection(MeshT *_mesh)
Grow Face selection.
void selectBoundaryFaces(MeshT *_mesh)
Select all boundary faces of a mesh.
void clearFaceSelection(MeshT *_mesh)
Set all faces to unselected.
void convertHalfedgeToEdgeSelection(MeshT *_mesh)
void convertFaceToHalfedgeSelection(MeshT *_mesh)
std::vector< int > getArea(MeshT *_mesh, unsigned int _type)
void convertEdgeSelectionToFeatureEdges(MeshT *_mesh)
void selectBoundaryHalfedges(MeshT *_mesh)
Select all boundary edges of a mesh.
void convertFaceToVertexSelection(MeshT *_mesh, const std::vector< int > &_faces)
void setArea(MeshT *_mesh, const std::vector< int > &_vertices, unsigned int _type, bool _state)
Set the area bit for all defined vertices.
void unselectVertices(MeshT *_mesh, const std::vector< int > &_vertices)
Unselect given vertices of a mesh.
void clearFeatureEdges(MeshT *_mesh)
std::vector< int > getEdgeSelection(MeshT *_mesh)