MiCylinderSliceExtractHexahedronIjk Class Reference
[Slice]

MeshViz Cylinder slice extractor for hexahedron IJK volume meshes More...

#include <MeshVizXLM/extractors/MiCylinderSliceExtractHexahedronIjk.h>

Inheritance diagram for MiCylinderSliceExtractHexahedronIjk:
MiCylinderSliceExtractIjk MiBaseExtractor

List of all members.

Public Member Functions

virtual ~MiCylinderSliceExtractHexahedronIjk ()
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetI &inputSet)=0
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetIjk &inputSet)=0
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetI &inputSet)=0
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetIjk &inputSet)=0

Static Public Member Functions

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

Detailed Description

MeshViz Cylinder slice extractor for hexahedron IJK volume meshes

A cylinder slice is a surface mesh defined by the intersection of a cylinder of infinite length with the input mesh. The cylinder is defined by a point on its central axis, a vector representing the central axis direction and the radius.

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 cylinder slice from a mesh:

   MiCylinderSliceExtractHexahedronIjk* cylinderSliceExtract =
     MiCylinderSliceExtractHexahedronIjk::getNewInstance(mesh);
   const MeXSurfaceMeshUnstructured& cylinderSlice =
     cylinderSliceExtract->extractSlice(center, radius, direction, NULL);

Constructor & Destructor Documentation

virtual MiCylinderSliceExtractHexahedronIjk::~MiCylinderSliceExtractHexahedronIjk (  )  [inline, virtual]

Member Function Documentation

virtual const MeXScalardSetI& MiCylinderSliceExtractHexahedronIjk::extractScalarSet ( const MiScalardSetIjk inputSet  )  [pure virtual]

Computes a PER_CELL scalar set on the extracted cylinder 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:
inputSet the input scalar set defined on the volume mesh
Returns:
the output scalar set defined on the resulting cylinder slice mesh

Implements MiCylinderSliceExtractIjk.

virtual const MeXScalardSetI& MiCylinderSliceExtractHexahedronIjk::extractScalarSet ( const MiScalardSetI inputSet  )  [pure virtual]

Computes a PER_NODE scalar set on the extracted cylinder 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:
inputSet the input scalar set defined on the volume mesh
Returns:
the output scalar set defined on the resulting cylinder slice mesh
virtual const MeXVec3dSetI& MiCylinderSliceExtractHexahedronIjk::extractVec3Set ( const MiVec3dSetIjk inputSet  )  [pure virtual]

Computes a vector set on the extracted cylinder 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:
inputSet the input vector set defined on the volume mesh
Returns:
the output scalar set defined on the resulting cylinder slice mesh

Implements MiCylinderSliceExtractIjk.

virtual const MeXVec3dSetI& MiCylinderSliceExtractHexahedronIjk::extractVec3Set ( const MiVec3dSetI inputSet  )  [pure virtual]

Computes a vector set on the extracted cylinder 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:
inputSet the input vector set defined on the volume mesh
Returns:
the output scalar set defined on the resulting cylinder slice mesh
static MiCylinderSliceExtractHexahedronIjk* MiCylinderSliceExtractHexahedronIjk::getNewInstance ( const MiVolumeMeshHexahedronIjk mesh,
bool  parallel = true,
MiTessellator tessellator = NULL 
) [static]

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

Parameters:
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,...).
Note:
Only some of the extraction algorithms have a parallel implementation.


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

Open Inventor Toolkit reference manual, generated on 4 Sep 2023
Copyright © Thermo Fisher Scientific All rights reserved.
https://www.openinventor.com/