Open Inventor Release 2024.1.0
 
Loading...
Searching...
No Matches
MiInterpolatedLogicalSliceExtract Class Referenceabstract

MeshViz Interpolated logical slice extractor for structured volume meshes More...

#include <MeshVizXLM/extractors/MiInterpolatedLogicalSliceExtract.h>

+ Inheritance diagram for MiInterpolatedLogicalSliceExtract:

Public Member Functions

virtual ~MiInterpolatedLogicalSliceExtract ()
 
virtual const MeXSurfaceMeshUnstructuredextractInterpolatedLogicalSlice (MiMesh::Dimension, double sliceValue, const MiCellFilterIjk *cellFilterIjk=NULL)=0
 Builds the topology and geometry of the Interpolated Logical Slice at the given value along the given slice axis.
 
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetIjk &inputSet)=0
 Extracts a scalar set from the volume mesh.
 
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetIjk &inputSet)=0
 Extracts a vector set from the volume mesh.
 
virtual const MeXSurfaceMeshUnstructuredgetExtract () const =0
 Returns the result of the extraction.
 
- Public Member Functions inherited from MiBaseExtractor
virtual ~MiBaseExtractor ()
 
virtual void setExtractorCallback (MiExtractorCallback *extractorCallback)=0
 Set the user defined extractor callback which will be called before each extraction, during each extraction and after each extraction.
 
virtual SoDEPRECATED void setExtractorCallback (MiExtractorCallback &extractorCallback)
 

Static Public Member Functions

static MiInterpolatedLogicalSliceExtractgetNewInstance (const MiVolumeMeshRegular &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 Factory method returning a new instance of a class implementing this abstract class.
 
static MiInterpolatedLogicalSliceExtractgetNewInstance (const MiVolumeMeshCurvilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 
static MiInterpolatedLogicalSliceExtractgetNewInstance (const MiVolumeMeshRectilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 

Detailed Description

MeshViz Interpolated logical slice extractor for structured volume meshes

An interpolated logical slice is similar to a logical slice except that instead of displaying the slice only on the side of the cells, it can interpolate a slice inside cells. This is done by providing a floating point value representing the offset along the cell axis.

Definition at line 48 of file MiInterpolatedLogicalSliceExtract.h.

Constructor & Destructor Documentation

◆ ~MiInterpolatedLogicalSliceExtract()

virtual MiInterpolatedLogicalSliceExtract::~MiInterpolatedLogicalSliceExtract ( )
inlinevirtual

Definition at line 51 of file MiInterpolatedLogicalSliceExtract.h.

Member Function Documentation

◆ extractInterpolatedLogicalSlice()

virtual const MeXSurfaceMeshUnstructured & MiInterpolatedLogicalSliceExtract::extractInterpolatedLogicalSlice ( MiMesh::Dimension  ,
double  sliceValue,
const MiCellFilterIjk cellFilterIjk = NULL 
)
pure virtual

Builds the topology and geometry of the Interpolated Logical Slice at the given value along the given slice axis.

◆ extractScalarSet()

virtual const MeXScalardSetI & MiInterpolatedLogicalSliceExtract::extractScalarSet ( const MiScalardSetIjk inputSet)
pure virtual

Extracts a scalar set from the volume mesh.

The scalars are mapped onto the current extracted interpolated logical slice.

Parameters
inputSetthe input scalar set defined on the volume mesh
Returns
the output scalar set defined on the resulting surface mesh.

Implemented in MiInterpolatedLogicalSliceExtractHexahedronIjk.

◆ extractVec3Set()

virtual const MeXVec3dSetI & MiInterpolatedLogicalSliceExtract::extractVec3Set ( const MiVec3dSetIjk inputSet)
pure virtual

Extracts a vector set from the volume mesh.

The vectors are mapped onto the current extracted logical slice.

Parameters
inputSetthe input vector set defined on the volume mesh
Returns
the output scalar set defined on the resulting surface mesh

Implemented in MiInterpolatedLogicalSliceExtractHexahedronIjk.

◆ getExtract()

virtual const MeXSurfaceMeshUnstructured & MiInterpolatedLogicalSliceExtract::getExtract ( ) const
pure virtual

Returns the result of the extraction.

Note
This method returns the same object returned by extractInterpolatedLogicalSlice without recomputing a new slice. This is useful to avoid to have to store the extracted surface in an intermediate object.

◆ getNewInstance() [1/3]

static MiInterpolatedLogicalSliceExtract * MiInterpolatedLogicalSliceExtract::getNewInstance ( const MiVolumeMeshCurvilinear mesh,
bool  parallel = true,
MiTessellator tessellator = NULL 
)
static

◆ getNewInstance() [2/3]

static MiInterpolatedLogicalSliceExtract * MiInterpolatedLogicalSliceExtract::getNewInstance ( const MiVolumeMeshRectilinear mesh,
bool  parallel = true,
MiTessellator tessellator = NULL 
)
static

◆ getNewInstance() [3/3]

static MiInterpolatedLogicalSliceExtract * MiInterpolatedLogicalSliceExtract::getNewInstance ( const MiVolumeMeshRegular mesh,
bool  parallel = true,
MiTessellator tessellator = NULL 
)
static

Factory method returning a new instance of a class implementing this abstract class.

Parameters
meshThe input mesh
parallelWhen true, tries to create an extract module using a parallel algorithm to speed up the extraction.
tessellatorThe tessellator object used for tessellating non linear cells (quadratic,...).
Note
Only some of the extraction algorithms have a parallel implementation.

The documentation for this class was generated from the following file: