Sphere slice extractor for unstructured volume meshes More...
#include <MeshVizXLM/extractors/MiSphereSliceExtractUnstructured.h>
Public Member Functions | |
virtual | ~MiSphereSliceExtractUnstructured () |
virtual const MeXSurfaceMeshUnstructured & | extractSlice (const MbVec3< double > ¢er, double radius, const MiCellFilterI *cellFilter=NULL)=0 |
virtual const MeXScalardSetI & | extractScalarSet (const MiScalardSetI &inputSet)=0 |
virtual const MeXVec3dSetI & | extractVec3Set (const MiVec3dSetI &inputSet)=0 |
virtual const MeXSurfaceMeshUnstructured & | getExtract () const =0 |
Static Public Member Functions | |
static MiSphereSliceExtractUnstructured * | getNewInstance (const MiVolumeMeshUnstructured &mesh, bool parallel=true, MiTessellator *tessellator=NULL) |
A sphere slice is the intersection of a given sphere with the mesh volume. The extracted sphere slice is an unstructured surface mesh.
Additional data sets can be mapped onto this extracted surface by calling the extractScalarSet() or extractVec3Set() methods.
The following sample code shows how to extract a sphere slice from a mesh:
MiSphereSliceExtractUnstructured* sphereSliceExtract = MiSphereSliceExtractUnstructured::getNewInstance(mesh); const MeXSurfaceMeshUnstructured& sphereSlice = sphereSliceExtract->extractSlice(center,radius, NULL);
virtual MiSphereSliceExtractUnstructured::~MiSphereSliceExtractUnstructured | ( | ) | [inline, virtual] |
virtual const MeXScalardSetI& MiSphereSliceExtractUnstructured::extractScalarSet | ( | const MiScalardSetI & | 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. |
virtual const MeXSurfaceMeshUnstructured& MiSphereSliceExtractUnstructured::extractSlice | ( | const MbVec3< double > & | center, | |
double | radius, | |||
const MiCellFilterI * | cellFilter = NULL | |||
) | [pure virtual] |
Builds the topology and geometry of a sphere slice intersecting the volume mesh.
center | The position of the center of the sphere | |
radius | The radius of the sphere | |
cellFilter | The cell filter object. |
virtual const MeXVec3dSetI& MiSphereSliceExtractUnstructured::extractVec3Set | ( | const MiVec3dSetI & | 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. |
virtual const MeXSurfaceMeshUnstructured& MiSphereSliceExtractUnstructured::getExtract | ( | ) | const [pure virtual] |
Returns the result of the extraction as a mesh.
static MiSphereSliceExtractUnstructured* MiSphereSliceExtractUnstructured::getNewInstance | ( | const MiVolumeMeshUnstructured & | mesh, | |
bool | parallel = true , |
|||
MiTessellator * | tessellator = NULL | |||
) | [static] |
Factory method returning a new instance of a class implementing this interface.
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,...). |