Class MiStreamlineExtractIjk
- java.lang.Object
-
- com.openinventor.meshvizxlm.extractors.streamline.MiStreamlineExtractIjk
-
- All Implemented Interfaces:
MiBaseExtractor
,MiExtractorIjk
,MiStreamlineExtractBase
- Direct Known Subclasses:
MiStreamlineExtractHexahedronIjk
public abstract class MiStreamlineExtractIjk extends java.lang.Object implements MiStreamlineExtractBase, MiExtractorIjk
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 (SeeMiPointProbeUnstructured
for settings).
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.
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract java.util.List<MeXScalardSetI>
extractScalarSet(MiScalardSetIjk inputSet)
Extracts from the mesh a list of scalar sets.
The scalars are mapped onto the current extracted streamlines.abstract java.util.List<MeXLineMeshCurvilinear<MeXTopologyI,MeXGeometryI>>
extractStreamlines(MiVec3dSetIjk inputDataSet, MiCellFilterIjk cellFilter, double[]... startPoints)
Builds the topology and geometry of the streamlines starting at the given points in the given dataset.abstract java.util.List<MeXVec3dSetI>
extractVec3Set(MiVec3dSetIjk inputSet)
Extracts from the mesh a list of vector sets.
The vectors are mapped onto the current extracted streamlines.abstract java.util.List<MeXLineMeshCurvilinear<MeXTopologyI,MeXGeometryI>>
getExtract()
Returns the result of the extraction as a mesh.static <T extends MiTopologyIjk,G extends MiGeometryHexahedronIjk>
MiStreamlineExtractIjkgetNewInstance(MiVolumeMeshVertexHexahedronIjk<T,G> mesh)
Create an instance of a streamlines extractor for a non indexed hexahedron volume mesh IJK.-
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.openinventor.meshvizxlm.extractors.MiBaseExtractor
setExtractorCallback
-
Methods inherited from interface com.openinventor.meshvizxlm.extractors.MiExtractorIjk
addCellRange, clearCellRanges
-
Methods inherited from interface com.openinventor.meshvizxlm.extractors.streamline.MiStreamlineExtractBase
setIntegrationDirection, setIntegrationMaxStepNumber, setIntegrationStepLengthFactor, setMaxLength, setMaxLifeTime, setMinSpeed
-
-
-
-
Method Detail
-
getNewInstance
public static <T extends MiTopologyIjk,G extends MiGeometryHexahedronIjk> MiStreamlineExtractIjk getNewInstance(MiVolumeMeshVertexHexahedronIjk<T,G> mesh)
Create an instance of a streamlines extractor for a non indexed hexahedron volume mesh IJK.- Parameters:
mesh
- the input mesh- Returns:
- a streamlines extractor for a non indexed hexahedron volume mesh IJK
-
extractStreamlines
public abstract java.util.List<MeXLineMeshCurvilinear<MeXTopologyI,MeXGeometryI>> extractStreamlines(MiVec3dSetIjk inputDataSet, MiCellFilterIjk cellFilter, double[]... startPoints)
Builds the topology and geometry of the streamlines starting at the given points in the given dataset. The resulting streamlines can be retrieved by callinggetExtract()
.- Parameters:
inputDataSet
- defines the vector field for the streamlines integrationcellFilter
- the cell filterstartPoints
- defines the list of start points {x,y,z} for the streamlines integration- Returns:
- the extracted streamlines as curvilinear line meshes
-
extractScalarSet
public abstract java.util.List<MeXScalardSetI> extractScalarSet(MiScalardSetIjk inputSet)
Extracts from the mesh a list of scalar sets.
The scalars are mapped onto the current extracted streamlines.Note : The argument i,j,k of the method
MiScalardSetIjk.get(int, int, int)
refers to the cell (i,j,k). Thus the binding of the input set must bePER_CELL
. AnUnsupportedOperationException
is thrown otherwise.- Parameters:
inputSet
- the input scalar set defined on the original volume mesh- Returns:
- the output scalar sets defined on the resulting edge meshes
-
extractVec3Set
public abstract java.util.List<MeXVec3dSetI> extractVec3Set(MiVec3dSetIjk inputSet)
Extracts from the mesh a list of vector sets.
The vectors are mapped onto the current extracted streamlines.Note : The argument i,j,k of the method
MiVec3dSetIjk.get(int, int, int)
refers to the cell (i,j,k). Thus the binding of the input set must bePER_CELL
. AnUnsupportedOperationException
is thrown otherwise.- Parameters:
inputSet
- the input vector set defined on the original volume mesh- Returns:
- the output vector sets defined on the resulting edge meshes
-
getExtract
public abstract java.util.List<MeXLineMeshCurvilinear<MeXTopologyI,MeXGeometryI>> getExtract()
Returns the result of the extraction as a mesh.- Returns:
- result of the extraction as a mesh
-
-