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

MeshViz Logical slice extractor for an hexahedron IJK volume mesh. More...

#include <MeshVizXLM/extractors/MiLogicalSliceExtractHexahedronIjk.h>

+ Inheritance diagram for MiLogicalSliceExtractHexahedronIjk:

Public Member Functions

virtual ~MiLogicalSliceExtractHexahedronIjk ()
 
virtual const MeXSurfaceMeshUnstructuredextractLogicalSlice (MiMesh::Dimension axis, size_t sliceIndex, bool upperVertex, const MiCellFilterIjk *cellFilter=NULL)=0
 Builds the topology and geometry of the logical slice at the given cell index along the given axis.
 
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetI &inputSet)=0
 Computes a PER_NODE scalar set on the extracted logical slice.
 
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetIjk &inputSet)=0
 Computes a PER_CELL scalar set on the extracted logical slice.
 
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetI &inputSet)=0
 Computes a vector set on the extracted logical slice.
 
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetIjk &inputSet)=0
 Computes a vector set on the extracted logical slice.
 
virtual const MeXSurfaceMeshUnstructuredgetExtract () const =0
 Returns the result of the extraction as a mesh.
 
- 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 MiLogicalSliceExtractHexahedronIjkgetNewInstance (const MiVolumeMeshHexahedronIjk &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 Factory method returning a new instance of a class implementing this abstract class.
 

Detailed Description

MeshViz Logical slice extractor for an hexahedron IJK volume mesh.

See MiLogicalSliceExtractRegular

Definition at line 44 of file MiLogicalSliceExtractHexahedronIjk.h.

Constructor & Destructor Documentation

◆ ~MiLogicalSliceExtractHexahedronIjk()

virtual MiLogicalSliceExtractHexahedronIjk::~MiLogicalSliceExtractHexahedronIjk ( )
inlinevirtual

Definition at line 47 of file MiLogicalSliceExtractHexahedronIjk.h.

Member Function Documentation

◆ extractLogicalSlice()

virtual const MeXSurfaceMeshUnstructured & MiLogicalSliceExtractHexahedronIjk::extractLogicalSlice ( MiMesh::Dimension  axis,
size_t  sliceIndex,
bool  upperVertex,
const MiCellFilterIjk cellFilter = NULL 
)
pure virtual

Builds the topology and geometry of the logical slice at the given cell index along the given axis.

When a cell filter is provided, the returned surface may contain dead cells.

Parameters
axisthe axis along which the extraction will be performed.
sliceIndexthe cell index along the selected axis to extract.
upperVertexextract the upper vertices of the selected cells if true, the lower vertices otherwise.
cellFilterthe cell filter to be used to accept or reject cells.

◆ extractScalarSet() [1/2]

virtual const MeXScalardSetI & MiLogicalSliceExtractHexahedronIjk::extractScalarSet ( const MiScalardSetI inputSet)
pure virtual

Computes a PER_NODE scalar set on the extracted logical slice.

Note : The argument i of the method MiScalardSetI::get(i) refers to the i-th node of the mesh. Thus the binding of the inputSet must be PER_NODE. An exception is thrown otherwise.

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

◆ extractScalarSet() [2/2]

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

Computes a PER_CELL scalar set on the extracted logical slice.

Note : The argument i,j,k of the method MiScalardSetIjk::get(i,j,k) refers to the cell (i,j,k). Thus the binding of the inputSet must be PER_CELL. An exception is thrown otherwise.

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

◆ extractVec3Set() [1/2]

virtual const MeXVec3dSetI & MiLogicalSliceExtractHexahedronIjk::extractVec3Set ( const MiVec3dSetI inputSet)
pure virtual

Computes a vector set on the extracted logical slice.

Note : The argument i of the method MiVec3dSetI::get(i) refers to the i-th node of the mesh. Thus the binding of the inputSet must be PER_NODE. An exception is thrown otherwise.

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

◆ extractVec3Set() [2/2]

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

Computes a vector set on the extracted logical slice.

Note : The argument i,j,k of the method MiVec3dSetIjk::get(i,j,k) refers to the cell (i,j,k). Thus the binding of the inputSet must be PER_CELL. An exception is thrown otherwise.

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

◆ getExtract()

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

Returns the result of the extraction as a mesh.

◆ getNewInstance()

static MiLogicalSliceExtractHexahedronIjk * MiLogicalSliceExtractHexahedronIjk::getNewInstance ( const MiVolumeMeshHexahedronIjk 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: