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

MeshViz Fence slice extractor for hexahedron Ijk meshes More...

#include <MeshVizXLM/extractors/MiFenceSliceExtractHexahedronIjk.h>

+ Inheritance diagram for MiFenceSliceExtractHexahedronIjk:

Public Member Functions

virtual ~MiFenceSliceExtractHexahedronIjk ()
 
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetI &inputSet)=0
 Computes a PER_NODE scalar set on the extracted fences.
 
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetIjk &inputSet)=0
 Computes a PER_CELL scalar set on the extracted fences.
 
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetI &inputSet)=0
 Computes a vector set on the extracted fences.
 
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetIjk &inputSet)=0
 Computes a vector set on the extracted fences.
 
- Public Member Functions inherited from MiFenceSliceExtractIjk
virtual ~MiFenceSliceExtractIjk ()
 
virtual const MeXSurfaceMeshUnstructuredextract (const MbVec3d &direction, const std::vector< MbVec3d > &polyline, const MiCellFilterIjk *cellFilter=NULL)=0
 Builds the topology and geometry of a fence slice intersecting the volume mesh.
 
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 MiFenceSliceExtractHexahedronIjkgetNewInstance (const MiVolumeMeshHexahedronIjk &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 Factory method returning a new instance of a class implementing this interface.
 
- Static Public Member Functions inherited from MiFenceSliceExtractIjk
static MiFenceSliceExtractIjkgetNewInstance (const MiVolumeMeshRegular &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 Factory method returning a new instance of a class implementing this interface.
 
static MiFenceSliceExtractIjkgetNewInstance (const MiVolumeMeshRectilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 
static MiFenceSliceExtractIjkgetNewInstance (const MiVolumeMeshCurvilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 
static MiFenceSliceExtractIjkgetNewInstance (const MiVolumeMeshVertexHexahedronIjk &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
 

Detailed Description

MeshViz Fence slice extractor for hexahedron Ijk meshes

A fence slice is an unstructured surface mesh defined by the intersection of several arbitrary planes (the fences) with a volume mesh. These fences are defined by a polyline and a direction. Each segment of the polyline is extruded along the direction to form a clipped plane slice. Thus, each fence goes through a segment of the polyline. Each plane slice is clipped by the extrusion of the 2 endpoints of each segment in the direction. The extracted fence slice is an unstructured surface.

SEE ALSO

MoMeshFenceSlice, MiFenceSliceExtractIjk, MiFenceSliceExtractUnstructured

Definition at line 49 of file MiFenceSliceExtractHexahedronIjk.h.

Constructor & Destructor Documentation

◆ ~MiFenceSliceExtractHexahedronIjk()

virtual MiFenceSliceExtractHexahedronIjk::~MiFenceSliceExtractHexahedronIjk ( )
inlinevirtual

Definition at line 52 of file MiFenceSliceExtractHexahedronIjk.h.

Member Function Documentation

◆ extractScalarSet() [1/2]

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

Computes a PER_NODE scalar set on the extracted fences.

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 fence slice mesh

◆ extractScalarSet() [2/2]

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

Computes a PER_CELL scalar set on the extracted fences.

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 fence slice mesh

Implements MiFenceSliceExtractIjk.

◆ extractVec3Set() [1/2]

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

Computes a vector set on the extracted fences.

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 fence slice mesh

◆ extractVec3Set() [2/2]

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

Computes a vector set on the extracted fences.

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 fence slice mesh

Implements MiFenceSliceExtractIjk.

◆ getNewInstance()

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

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

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: