Tessellated line mesh extractor for unstructured non linear 1D mesh. More...
#include <MeshVizXLM/extractors/MiTessellatedLineExtract.h>
Public Member Functions | |
virtual | ~MiTessellatedLineExtract () |
virtual const MeXLineMeshUnstructured & | tessellate (MiTessellator &tesselator, const MiCellFilterI *cellFilter=NULL)=0 |
virtual const MeXPointMeshCurvilinear & | extractPoints (const MiCellFilterI *cellFilter=NULL)=0 |
virtual const MeXScalardSetI & | extractScalarSet (const MiScalardSetI &inputSet)=0 |
virtual const MeXVec3dSetI & | extractVec3Set (const MiVec3dSetI &inputSet)=0 |
virtual const MeXLineMeshUnstructured & | getExtract () const =0 |
virtual const MeXPointMeshCurvilinear & | getPointExtract () const =0 |
Static Public Member Functions | |
static MiTessellatedLineExtract * | getNewInstance (const MiLineMeshUnstructured &mesh, bool parallel=true) |
Builds a tessellated line mesh from a non linear 1D mesh. The tessellation is done by using the given MiTessellator (see tessellate()).
virtual MiTessellatedLineExtract::~MiTessellatedLineExtract | ( | ) | [inline, virtual] |
virtual const MeXPointMeshCurvilinear& MiTessellatedLineExtract::extractPoints | ( | const MiCellFilterI * | cellFilter = NULL |
) | [pure virtual] |
Builds a new point mesh by collecting all cell nodes of the input mesh given to the factory method getNewInstance().
[in] | cellFilter | The optional cell filter. Line cells excluded by this filter are not included "as is" in the build mesh. |
virtual const MeXScalardSetI& MiTessellatedLineExtract::extractScalarSet | ( | const MiScalardSetI & | inputSet | ) | [pure virtual] |
Extracts a scalar set from the input mesh.
For PER_NODE dataset, the value of each point of the tessellation is calculated by using the shape functions of the input cell and the parametric coordinates of the each tessellated point. For PER_CELL dataset, the value of each tessellated cell is just a copy of the value of each input cell. The scalars are mapped onto the current tessellated mesh refering to either the line mesh or the point mesh depending on whether tessellate() or extractPoints() was last called.
[in] | inputSet | the input scalar set defined on the input mesh. |
virtual const MeXVec3dSetI& MiTessellatedLineExtract::extractVec3Set | ( | const MiVec3dSetI & | inputSet | ) | [pure virtual] |
Extracts a vector set from the input mesh.
For PER_NODE dataset, the value of each point of the tessellation is calculated by using the shape functions of the input cell and the parametric coordinates of the each tessellated point. For PER_CELL dataset, the value of each tessellated cell is just a copy of the value of each input cell. The vectors are mapped onto the current tessellated mesh refering to either the line mesh or the point mesh depending on whether tessellate() or extractPoints() was last called.
[in] | inputSet | the input vector set defined on the input mesh. |
virtual const MeXLineMeshUnstructured& MiTessellatedLineExtract::getExtract | ( | ) | const [pure virtual] |
Returns the tessellated mesh extracted by the previous call to tessellate().
static MiTessellatedLineExtract* MiTessellatedLineExtract::getNewInstance | ( | const MiLineMeshUnstructured & | mesh, | |
bool | parallel = true | |||
) | [static] |
Factory method returning a new instance of a class implementing this abstract class.
mesh | The input mesh | |
parallel | When true, tries to create an extract module using a parallel algorithm to speed up the extraction. |
virtual const MeXPointMeshCurvilinear& MiTessellatedLineExtract::getPointExtract | ( | ) | const [pure virtual] |
Returns the result mesh extracted by the previous call to extractPoints().
virtual const MeXLineMeshUnstructured& MiTessellatedLineExtract::tessellate | ( | MiTessellator & | tesselator, | |
const MiCellFilterI * | cellFilter = NULL | |||
) | [pure virtual] |
Builds a new linear line mesh by tessellating each non linear cell of the input mesh given to the factory method getNewInstance().
[in] | tesselator | The instance used to tessellate. |
[in] | cellFilter | The optional cell filter. Line cells excluded by this filter are neither tessellated nor included "as is" in the build mesh. |