Streamline extractor for structured volume meshes. More...
#include <MeshVizXLM/extractors/MiStreamlineExtractIjk.h>
Public Member Functions | |
virtual const std::vector< const MeXLineMeshCurvilinear * > & | extractStreamline (const MiVec3dSetIjk &inputdataset, const std::vector< MbVec3d > &startPoints, const MiCellFilterIjk *cellFilter=NULL)=0 |
Builds the topology and geometry of the streamlines starting at the given points in the given dataset. | |
virtual const std::vector< const MeXScalardSetI * > & | extractScalarSet (const MiScalardSetIjk &inputSet)=0 |
Extracts from the mesh a list of scalar sets. | |
virtual const std::vector< const MeXVec3dSetI * > & | extractVec3Set (const MiVec3dSetIjk &inputSet)=0 |
Extracts from the mesh a vector set. | |
virtual const std::vector< const MeXLineMeshCurvilinear * > & | getExtract () const =0 |
Returns the result of the extraction as a mesh. | |
Public Member Functions inherited from MiStreamlineExtractBase | |
virtual | ~MiStreamlineExtractBase () |
virtual void | setMaxLifeTime (double maxLifeTime) |
Sets the maximum life time of the streamlines. | |
virtual void | setMaxLength (double maxLength) |
Sets the maximum length of the streamlines. | |
virtual void | setMinSpeed (double minSpeed) |
Sets the minimum speed of the streamlines. | |
virtual void | setIntegrationStepLengthFactor (double factor) |
Sets the step length factor for the streamlines integration. | |
virtual void | setIntegrationMaxStepNumber (int maxStepNumber) |
Sets the maximum step number during the streamlines integration. | |
virtual void | setIntegrationDirection (IntegrationDirection direction) |
Sets the direction for the streamlines integration. | |
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 MiStreamlineExtractIjk * | getNewInstance (const MiVolumeMeshRegular &mesh, bool parallel=true) |
Factory method returning a new instance of a class implementing this abstract class. | |
static MiStreamlineExtractIjk * | getNewInstance (const MiVolumeMeshRectilinear &mesh, bool parallel=true) |
static MiStreamlineExtractIjk * | getNewInstance (const MiVolumeMeshCurvilinear &mesh, bool parallel=true) |
Additional Inherited Members | |
Public Types inherited from MiStreamlineExtractBase | |
enum | IntegrationDirection { FORWARD , BACKWARD } |
Integration direction. More... | |
Streamline extractor for structured volume meshes.
Builds a list of MiLineMeshCurvilinear interfaces containing streamlines starting from a list of source points and probes the input mesh to compute the values at the streamline nodes (See MiPointProbeUnstructured for settings on curvilinear mesh).
A streamline is a line that is everywhere tangent to a vector field. Streamlines are meaningless for unsteady flow, because time is not taken into account during the computation of the line. Streamlines are integrated from a given set of vectors using a Runge/Kutta method of order 2 .
Definition at line 54 of file MiStreamlineExtractIjk.h.
|
pure virtual |
Extracts from the mesh a list of scalar sets.
The scalars are mapped onto the current extracted streamlines. If the dataset is binded PER_NODE the scalars are interpolated and one scalar is binded per node of the extracted streamlines. Otherwise one scalar is binded per edge of the extracted streamlines.
inputSet | the input scalar set defined on the original volume mesh |
Implemented in MiStreamlineExtractHexahedronIjk.
|
pure virtual |
Builds the topology and geometry of the streamlines starting at the given points in the given dataset.
inputdataset | Defines the vector field for the streamlines integration. |
startPoints | Defines the list of start points for the streamlines integration. |
cellFilter | The call filter. |
Implemented in MiStreamlineExtractHexahedronIjk.
|
pure virtual |
Extracts from the mesh a vector set.
The vectors are mapped onto the current extracted streamlines. If the dataset is binded PER_NODE the vectors are interpolated and one vector is binded per node of the extracted streamlines. Otherwise one vector is binded per edge of the extracted streamlines.
inputSet | the input vector set defined on the original volume mesh |
Implemented in MiStreamlineExtractHexahedronIjk.
|
pure virtual |
Returns the result of the extraction as a mesh.
|
static |
|
static |
|
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. |