Grid plane slice extractor on structured volume meshes More...
#include <MeshVizXLM/extractors/MiGridPlaneSliceExtractIjk.h>
Public Member Functions | |
virtual | ~MiGridPlaneSliceExtractIjk () |
virtual const MeXSurfaceMeshCurvilinear & | extractGrid (const MbVec3< double > &normal, double distance, double step, const MiCellFilterIjk *cellFilter=NULL)=0 |
virtual const MeXScalardSetIj & | extractScalarSet (const MiScalardSetIjk &inputSet)=0 |
virtual const MeXVec3dSetIj & | extractVec3Set (const MiVec3dSetIjk &inputSet)=0 |
virtual const MeXSurfaceMeshCurvilinear & | getExtract () const =0 |
| |
static MiGridPlaneSliceExtractIjk * | getNewInstance (const MiVolumeMeshRegular &mesh, bool parallel=true, MiTessellator *tessellator=NULL) |
static MiGridPlaneSliceExtractIjk * | getNewInstance (const MiVolumeMeshRectilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL) |
static MiGridPlaneSliceExtractIjk * | getNewInstance (const MiVolumeMeshCurvilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL) |
This extractor is similar to the plane slice extractor except that it creates a structured mesh and probes the input volume to compute the values at the surface nodes and cells (See MiPointProbeUnstructured for settings on curvilinear mesh). The grid created by this extractor is computed so that it encloses completely the cross section of the input volume mesh marking as dead the cells outside the volume.
virtual MiGridPlaneSliceExtractIjk::~MiGridPlaneSliceExtractIjk | ( | ) | [inline, virtual] |
virtual const MeXSurfaceMeshCurvilinear& MiGridPlaneSliceExtractIjk::extractGrid | ( | const MbVec3< double > & | normal, | |
double | distance, | |||
double | step, | |||
const MiCellFilterIjk * | cellFilter = NULL | |||
) | [pure virtual] |
Builds the topology and geometry of a curvilinear surface mesh defined by the given plane normal and distance to origin.
This grid is computed so that it encloses completely the cross section of the input volume mesh.
normal | Vector normal to the grid plane slice | |
distance | Position of the plane relatively to the origin along the normal | |
step | Distance between two consecutive nodes in both directions of the plane | |
cellFilter | The cell filter object. |
virtual const MeXScalardSetIj& MiGridPlaneSliceExtractIjk::extractScalarSet | ( | const MiScalardSetIjk & | inputSet | ) | [pure virtual] |
Extracts a scalar set from the original mesh. The scalars are mapped onto the current extracted mesh.
inputSet | The input scalar set defined on the original mesh. |
Implemented in MiGridPlaneSliceExtractHexahedronIjk.
virtual const MeXVec3dSetIj& MiGridPlaneSliceExtractIjk::extractVec3Set | ( | const MiVec3dSetIjk & | inputSet | ) | [pure virtual] |
Extracts a vector set from the original mesh. The vectors are mapped onto the current extracted mesh.
inputSet | The input vector set defined on the original mesh. |
Implemented in MiGridPlaneSliceExtractHexahedronIjk.
virtual const MeXSurfaceMeshCurvilinear& MiGridPlaneSliceExtractIjk::getExtract | ( | ) | const [pure virtual] |
Returns the result of the extraction as a mesh.
static MiGridPlaneSliceExtractIjk* MiGridPlaneSliceExtractIjk::getNewInstance | ( | const MiVolumeMeshCurvilinear & | mesh, | |
bool | parallel = true , |
|||
MiTessellator * | tessellator = NULL | |||
) | [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. | |
tessellator | The tessellator object used for tessellating non linear cells (quadratic,...). |
static MiGridPlaneSliceExtractIjk* MiGridPlaneSliceExtractIjk::getNewInstance | ( | const MiVolumeMeshRectilinear & | mesh, | |
bool | parallel = true , |
|||
MiTessellator * | tessellator = NULL | |||
) | [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. | |
tessellator | The tessellator object used for tessellating non linear cells (quadratic,...). |
static MiGridPlaneSliceExtractIjk* MiGridPlaneSliceExtractIjk::getNewInstance | ( | const MiVolumeMeshRegular & | mesh, | |
bool | parallel = true , |
|||
MiTessellator * | tessellator = NULL | |||
) | [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. | |
tessellator | The tessellator object used for tessellating non linear cells (quadratic,...). |