Isosurface extractor for structured volume meshes
More...
#include <MeshVizXLM/extractors/MiIsosurfExtractIjk.h>
Isosurface extractor for structured volume meshes
Builds the isosurface of the given isovalue in the given dataset.
Definition at line 46 of file MiIsosurfExtractIjk.h.
◆ ~MiIsosurfExtractIjk()
virtual MiIsosurfExtractIjk::~MiIsosurfExtractIjk |
( |
| ) |
|
|
inlinevirtual |
◆ extractIsovalue()
Builds the isosurface of the given isovalue in the given dataset as a surface mesh.
- Note
- Memory requirement: The extractIsovalue method allocates a block of memory. The size (in bytes) is the number of cells in the mesh. For a large mesh this is a significant amount of memory. For example, a mesh 2000 x 2000 x 2000 requires 8 giga-bytes of memory to extract an isosurface. Applications should use try/catch blocks to handle the case where this memory allocation fails. Also note that this memory is retained until the extractor is destroyed.
-
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.
◆ extractScalarSet()
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.
◆ extractVec3Set()
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.
◆ getExtract()
Returns the result of the extraction as a mesh.
◆ getNewInstance() [1/4]
◆ getNewInstance() [2/4]
◆ getNewInstance() [3/4]
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.
◆ getNewInstance() [4/4]
The documentation for this class was generated from the following file: