1 #ifndef MESH_PROCESS_SELECTION_HPP
2 #define MESH_PROCESS_SELECTION_HPP
25 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
27 return (*
this)(currentMesh());
30 bool operator()(
Mesh* m);
39 return "Select all vertices of the current mesh";
67 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
69 return (*
this)(currentMesh());
72 bool operator()(
Mesh* m);
78 return "Select Bad Normals";
82 return "Select all vertices of the current mesh with bad normals (i.e. normals is not opf size 1)";
110 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
112 return (*
this)(currentMesh());
115 bool operator()(
Mesh* m);
124 return "Unselect the vertices of the current mesh";
152 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
154 return (*
this)(currentMesh());
157 bool operator()(
Mesh* m);
163 return "Invert Selection";
166 return "Invert the selection of the current mesh.";
195 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
198 return (*
this)(currentMesh(), replace);
201 bool operator()(
Mesh* m,
bool replace);
207 return "Select Unlabeled";
210 return "Add to or replace the selection with the unlabeled vertices.";
224 map[0] = booleanChoice();
247 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
250 return (*
this)(currentMesh(), replace);
253 bool operator()(
Mesh* m,
bool replace);
259 return "Select Labeled";
262 return "Add to or replace the selection with the labeled vertices.";
276 map[0] = booleanChoice();
297 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
300 return (*
this)(currentMesh(), replace, parms[1].toInt());
303 bool operator()(
Mesh* m,
bool replace,
int label);
309 return "Select Label";
313 return "Add to or replace the selection with the vertices of a given label (0 for current label).";
318 <<
"Label (0 for current)";
328 map[0] = booleanChoice();
351 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
353 return (*
this)(currentMesh(), parms[0].toInt());
356 bool operator()(
Mesh* m,
int label);
362 return "Unselect Label";
366 return "Remove the vertices of a given label (0 for current label) from the selection.";
397 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
399 return (*
this)(currentMesh());
402 bool operator()(
Mesh* m);
408 return "Select Clip Region";
411 return "Add vertices in clip region to selection.";
440 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
442 return (*
this)(currentMesh());
445 bool operator()(
Mesh* m);
451 return "Extend to Whole Cells";
454 return "Extend Selection to Whole Cells";
482 if(!checkState().mesh(MESH_NON_EMPTY | MESH_SHOW_MESH))
484 return (*
this)(currentMesh());
487 bool operator()(
Mesh* m);
493 return "Select Duplicate Cells";
496 return "Select cells with duplicate labels.";
536 return "Extend by Connectivity";
539 return "Extend the selection to connected regions";
548 return QIcon(
":/images/SelectConnected.png");
bool operator()(const QStringList &)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:108
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:453
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:456
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:84
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:264
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:368
bool operator()(const QStringList &)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:438
bool operator()(const QStringList &)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:23
QStringList parmDefaults() const
List of default parms.
Definition: MeshProcessSelection.hpp:374
Select all vertices within the clipped region.
Definition: MeshProcessSelection.hpp:387
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:407
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:90
bool operator()(const QStringList &)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:480
bool operator()(const QStringList &parms)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:193
ParmChoiceMap parmChoice() const
Purely for GUI purposes, provides for some of the parms parameter a choice.
Definition: MeshProcessSelection.hpp:273
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:258
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:358
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:162
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:174
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:305
bool operator()(const QStringList &parms)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:295
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:315
Select all the vertices with invalid normals in the current mesh.
Definition: MeshProcessSelection.hpp:57
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:32
bool operator()(const QStringList &)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:65
Ensure no vertex is selected in the current mesh.
Definition: MeshProcessSelection.hpp:100
bool operator()(const QStringList &parms)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:245
ParmChoiceMap parmChoice() const
Purely for GUI purposes, provides for some of the parms parameter a choice.
Definition: MeshProcessSelection.hpp:221
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:168
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:364
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:450
Process()
Default constructor.
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:544
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:255
bool operator()(const QStringList &)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:150
Invert the selection status of all the vertices in the current mesh.
Definition: MeshProcessSelection.hpp:142
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:413
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:227
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:41
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:419
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:462
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:80
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:261
CheckState checkState()
Call this function and convert the result to a boolean.
QStringList parmDefaults() const
List of default parms.
Definition: MeshProcessSelection.hpp:320
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:492
This class holds the actual mesh as a VV Graph and all sort of properties for it, including visualiza...
Definition: Mesh.hpp:167
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:532
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:410
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:489
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:212
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:459
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:361
QStringList parmDefaults() const
List of default parms.
Definition: MeshProcessSelection.hpp:270
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:331
Unselect all the vertices having a given label.
Definition: MeshProcessSelection.hpp:341
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:117
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:308
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:279
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:38
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:215
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:541
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:165
File containing the definition of a Process.
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:416
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:77
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:447
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:267
Mesh * mesh(int i)
Returns the ith mesh.
This is the main process class, the one all process inherit from.
Definition: Process.hpp:248
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:535
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:123
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:371
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:311
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:206
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:74
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:132
Select all labeled vertices in the current mesh.
Definition: MeshProcessSelection.hpp:237
mgx_EXPORT bool stringToBool(const QString &string)
Helper function converting a string into a boolean.
Select all the unlabel vertices of the current mesh.
Definition: MeshProcessSelection.hpp:185
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:501
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:171
Select vertices if the region with their label is not contiguous (e.g.
Definition: MeshProcessSelection.hpp:472
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:35
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:47
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:504
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:498
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:547
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:209
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:44
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:87
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:495
bool operator()(const QStringList &parms)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:349
ParmChoiceMap parmChoice() const
Purely for GUI purposes, provides for some of the parms parameter a choice.
Definition: MeshProcessSelection.hpp:325
Select all the vertices in the current mesh.
Definition: MeshProcessSelection.hpp:15
Non-empty mesh.
Definition: Process.hpp:664
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:203
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:404
Definition: MeshProcessSelection.hpp:287
Extend the current selection to all vertices that are connected to a currently selected vertex...
Definition: MeshProcessSelection.hpp:515
Mesh * currentMesh()
Returns the current mesh (i.e.
QStringList parmNames() const
List of named parameters.
Definition: MeshProcessSelection.hpp:126
QIcon icon() const
Icon to use to represent the process in the GUI.
Definition: MeshProcessSelection.hpp:377
bool operator()(const QStringList &)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:523
QStringList parmDescs() const
List of parameters descriptions.
Definition: MeshProcessSelection.hpp:129
QString folder() const
Folder in which to place the process.
Definition: MeshProcessSelection.hpp:159
QStringList parmDefaults() const
List of default parms.
Definition: MeshProcessSelection.hpp:218
Mesh processes have mutable access to meshes and non-mutable access to stacks.
Definition: Process.hpp:855
bool operator()(const QStringList &)
Implementation of the process with generic arguments.
Definition: MeshProcessSelection.hpp:395
QString description() const
Returns a description of the process for the GUI.
Definition: MeshProcessSelection.hpp:538
QString name() const
Returns the name of the process.
Definition: MeshProcessSelection.hpp:120
Extent the current selection so each label having at least one vertex selected will be fully selected...
Definition: MeshProcessSelection.hpp:430