![]() |
GemaCoreLib
The GeMA Core library
|
An auxiliary class for emiting extra mesh nodes needed by standard GeMA element transformations that can be used while exporting data. More...
#include <gmFileExtraNodes.h>

Public Member Functions | |
| GmFileExtraNodes (const GmFileFormat *fileFormat, const GmCellMesh *mesh, bool activeOnly, const GmCellGroupSet *group, int numMeshNodes, bool useModelOrder) | |
| Constructor. Gets as parameter the file format object used to define which element types need transformation along with the target mesh, the definition of whether inactive cells should be considered or not, the definition of an optional cell group that contains the cells to be considered and the number of "standard" exported mesh nodes. | |
| int | numNodes () const |
| Returns the number of extra nodes. | |
| const QPair< int, int > & | edgeNodes (int i) const |
| Returns the mesh node indices for the endpoints of the edge where the i'th extra node was created. | |
| void | resetNext () |
| Resets the value that will be returned by nextNodeIndex() to the first extra node index. | |
| int | nextNodeIndex () |
| Each call returns the next extra node index. The series starts with the exported index for the first extra node and can be reset by a call to resetNext() | |
| int | lastNodeIndex () const |
| Returns the index of the last valid extra node index. | |
Static Public Member Functions | |
| static bool | transformationExists (GmCellType cellType) |
| Returns true if this class implements a standard transformation for the given type. | |
Private Attributes | |
| QVector< QPair< int, int > > | _extraNodes |
| Set of extra nodes created for element transformations. | |
| int | _firstIndex |
| The exported index for the first extra node. | |
| int | _currentIndex |
| The "current" extra node index returned by nextNodeIndex() | |
Static Private Attributes | |
| static QVector< GmCellType > | _acceptedTypes |
| The set of types that we can handle. | |
An auxiliary class for emiting extra mesh nodes needed by standard GeMA element transformations that can be used while exporting data.
Available transformations are:
| GmFileExtraNodes::GmFileExtraNodes | ( | const GmFileFormat * | fileFormat, |
| const GmCellMesh * | mesh, | ||
| bool | activeOnly, | ||
| const GmCellGroupSet * | group, | ||
| int | numMeshNodes, | ||
| bool | useModelOrder ) |
Constructor. Gets as parameter the file format object used to define which element types need transformation along with the target mesh, the definition of whether inactive cells should be considered or not, the definition of an optional cell group that contains the cells to be considered and the number of "standard" exported mesh nodes.
The number of standard exported mesh nodes is not obtained from the mesh since it also depends on a set of other configurations, such as if unused nodes (due to not exporting inactive cells) are exported or not and if ghost nodes are exported or not.
If useModelOrder is true and no group was set, the cells will be traversed in the original model order, instead of the local, translated order. This is not necessary when working with a group since the group is always in the original order (cell indices inside the group are translated, but not reordered).
|
staticprivate |
The set of types that we can handle.
The definition & initialization of the set of types that we can handle.