Convert data sets bound per cell into data sets bound per node on a given structured surface mesh. More...
#include <MeshVizXLM/extractors/MiPerCellToPerNodeExtractIj.h>
Public Member Functions | |
virtual | ~MiPerCellToPerNodeExtractIj () |
virtual const MeXScalardSetIj & | extractScalarSet (const MiScalardSetIj &inputSet)=0 |
virtual const MeXVec3dSetIj & | extractVec3Set (const MiVec3dSetIj &inputSet)=0 |
| |
static MiPerCellToPerNodeExtractIj * | getNewInstance (const MiSurfaceMeshRegular &mesh, bool parallel=true) |
static MiPerCellToPerNodeExtractIj * | getNewInstance (const MiSurfaceMeshRectilinear &mesh, bool parallel=true) |
static MiPerCellToPerNodeExtractIj * | getNewInstance (const MiSurfaceMeshCurvilinear &mesh, bool parallel=true) |
This conversion tool is another type of extractor which takes a data set bound per cell on a structured surface mesh as input and produces a new data set bound per node on the same mesh.
The value computed at a given node is the average of values from the surrounding cells, except dead cells.
The following example shows how to convert data sets bound per cell:
MiPerCellToPerNodeExtractIj* extract = MiPerCellToPerNodeExtractIj::getNewInstance(mesh); const MeXScalardSetIj& perNodeScalarSet = extract->extractScalarSet(perCellScalarSet); const MeXVec3dSetIj& perNodeVectorSet = extract->extractVec3Set(perCellVectorSet);
virtual MiPerCellToPerNodeExtractIj::~MiPerCellToPerNodeExtractIj | ( | ) | [inline, virtual] |
virtual const MeXScalardSetIj& MiPerCellToPerNodeExtractIj::extractScalarSet | ( | const MiScalardSetIj & | inputSet | ) | [pure virtual] |
Converts a PER_CELL scalar set defined on the input mesh into a PER_NODE scalar set.
inputSet | The input PER_CELL scalar set defined on the input mesh. |
virtual const MeXVec3dSetIj& MiPerCellToPerNodeExtractIj::extractVec3Set | ( | const MiVec3dSetIj & | inputSet | ) | [pure virtual] |
Converts a PER_CELL vector set defined on the input mesh into a PER_NODE vecto set.
inputSet | The input PER_CELL vector set defined on the input mesh. |
static MiPerCellToPerNodeExtractIj* MiPerCellToPerNodeExtractIj::getNewInstance | ( | const MiSurfaceMeshCurvilinear & | mesh, | |
bool | parallel = true | |||
) | [static] |
Factory method returning a new instance of a class implementing this abstract class.
mesh | The input mesh | |
parallel | When true, tries to create an extract module using a parallel algorithm to speed up the extraction. |
static MiPerCellToPerNodeExtractIj* MiPerCellToPerNodeExtractIj::getNewInstance | ( | const MiSurfaceMeshRectilinear & | mesh, | |
bool | parallel = true | |||
) | [static] |
Factory method returning a new instance of a class implementing this abstract class.
mesh | The input mesh | |
parallel | When true, tries to create an extract module using a parallel algorithm to speed up the extraction. |
static MiPerCellToPerNodeExtractIj* MiPerCellToPerNodeExtractIj::getNewInstance | ( | const MiSurfaceMeshRegular & | mesh, | |
bool | parallel = true | |||
) | [static] |
Factory method returning a new instance of a class implementing this abstract class.
mesh | The input mesh | |
parallel | When true, tries to create an extract module using a parallel algorithm to speed up the extraction. |