MiIsosurfExtractIjk Class Reference
[Isosurface]

MeshViz Isosurface extractor for structured volume meshes More...

#include <MeshVizXLM/extractors/MiIsosurfExtractIjk.h>

Inheritance diagram for MiIsosurfExtractIjk:
MiBaseExtractor MiIsosurfExtractHexahedronIjk

List of all members.

Public Member Functions

virtual ~MiIsosurfExtractIjk ()
virtual const
MeXSurfaceMeshUnstructured
extractIsovalue (double isovalue, const MiScalardSetIjk &dataSet, const MiCellFilterIjk *cellFilter=NULL)=0
virtual const MeXScalardSetIextractScalarSet (const MiScalardSetIjk &inputSet)=0
virtual const MeXVec3dSetIextractVec3Set (const MiVec3dSetIjk &inputSet)=0
virtual const
MeXSurfaceMeshUnstructured
getExtract () const =0



static MiIsosurfExtractIjkgetNewInstance (const MiVolumeMeshRegular &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
static MiIsosurfExtractIjkgetNewInstance (const MiVolumeMeshCurvilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
static MiIsosurfExtractIjkgetNewInstance (const MiVolumeMeshRectilinear &mesh, bool parallel=true, MiTessellator *tessellator=NULL)
static MiIsosurfExtractIjkgetNewInstance (const MiVolumeMeshVertexHexahedronIjk &mesh, bool parallel=true, MiTessellator *tessellator=NULL)

Detailed Description

MeshViz Isosurface extractor for structured volume meshes

Builds the isosurface of the given isovalue in the given dataset.

See related examples:

Bench_Isosurf, Bench_MultipleExtractors


Constructor & Destructor Documentation

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

Member Function Documentation

virtual const MeXSurfaceMeshUnstructured& MiIsosurfExtractIjk::extractIsovalue ( double  isovalue,
const MiScalardSetIjk dataSet,
const MiCellFilterIjk cellFilter = NULL 
) [pure virtual]

Builds the isosurface of the given isovalue in the given dataset as a surface mesh.

Note:
In the case of a dataset bound PER_CELL, it will be converted into a new internal dataset bound PER_NODE and cached in the extractor.
Parameters:
isovalue Value for which an isosurface must be computed
dataSet The input data set used to compute the isovalue from. When extracting from a MiVolumeMeshVertexHexahedronIjk, this dataset must be bound PER_CELL, otherwise the extraction will thow a std::exception.
cellFilter The cell filter
Returns:
The extracted isosurface

Implemented in MiIsosurfExtractHexahedronIjk.

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

Computes a scalar set on the extracted isosurface.

Parameters:
inputSet the input scalar set defined on the volume mesh When extracting from a MiVolumeMeshVertexHexahedronIjk, this dataset must be bound PER_CELL, otherwise the extraction will thow a std::exception.
Returns:
the output scalar set defined on the resulting isosurface mesh

Implemented in MiIsosurfExtractHexahedronIjk.

virtual const MeXVec3dSetI& MiIsosurfExtractIjk::extractVec3Set ( const MiVec3dSetIjk inputSet  )  [pure virtual]

Computes a vector set on the extracted isosurface.

Parameters:
inputSet the input vec3 set defined on the volume mesh When extracting from a MiVolumeMeshVertexHexahedronIjk, this dataset must be bound PER_CELL, otherwise the extraction will thow a std::exception.
Returns:
the output scalar set defined on the resulting isosurface mesh

Implemented in MiIsosurfExtractHexahedronIjk.

virtual const MeXSurfaceMeshUnstructured& MiIsosurfExtractIjk::getExtract (  )  const [pure virtual]

Returns the result of the extraction as a mesh.

static MiIsosurfExtractIjk* MiIsosurfExtractIjk::getNewInstance ( const MiVolumeMeshVertexHexahedronIjk 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.

static MiIsosurfExtractIjk* MiIsosurfExtractIjk::getNewInstance ( const MiVolumeMeshRectilinear 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.

static MiIsosurfExtractIjk* MiIsosurfExtractIjk::getNewInstance ( const MiVolumeMeshCurvilinear 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.

static MiIsosurfExtractIjk* MiIsosurfExtractIjk::getNewInstance ( const MiVolumeMeshRegular 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 15 Mar 2023
Copyright © Thermo Fisher Scientific All rights reserved.
http://www.openinventor.com/