Class PoBaseStreamLine
- java.lang.Object
-
- com.openinventor.inventor.Inventor
-
- com.openinventor.inventor.misc.SoBase
-
- com.openinventor.inventor.fields.SoFieldContainer
-
- com.openinventor.inventor.nodes.SoNode
-
- com.openinventor.inventor.nodekits.SoBaseKit
-
- com.openinventor.meshviz.graph.PoBase
-
- com.openinventor.meshviz.data.Po3DdataMaster
-
- com.openinventor.meshviz.data.PoMesh
-
- com.openinventor.meshviz.data.PoBaseStreamLine
-
- All Implemented Interfaces:
SafeDisposable
- Direct Known Subclasses:
PoStreamLine,PoStreamParticleMotion,PoStreamSurface
public class PoBaseStreamLine extends PoMesh
Base class of all streamline representations on a mesh. Class to calculate the geometry of streamlines starting from a list of source points. A streamline is a line that is everywhere tangent to the vectors field. Streamlines are meaningless for unsteady flow, because the time is not taken into account during the computation of the line. Streamlines are calculated by using a Runge/Kutta method of order 2.The streamlines are calculated from a set of vectors in the current mesh. See
PoMeshfor more explanations about the current mesh. The index of vectors data set used to compute streamlines, is defined by the fieldPoMesh.vecsIndex. If this vectors data set does not exist in the current mesh, the representation is empty. The origin of each vector is a node of the mesh.The derived classes respect the following rules to color the representation:
If
PoMesh.coloringType= COLOR_INHERITED and if the field "colors" is empty, the representation uses only one inherited color, so each part of the representation have the same color.If
PoMesh.coloringType= COLOR_INHERITED and if the field colors is not empty, the representation uses each colors of field for each streamline. For example, the streamline starting from the i-th startPoints is colored by colors[inum_colors], where num_colors is the size of the field "colors".If the field
PoMesh.valuesIndexis not defined (i.e. < 0), and if coloringType != COLOR_INHERITED, the representations are colored by using the current data mapping applied to the velocity at each point of the streamlines. The definition of the "current data mapping" is explained inPoMesh.If the field
PoMesh.valuesIndexis defined, and if coloringType != COLOR_INHERITED, the representations are colored by using the current data mapping applied to the value at each point of the streamlines.File format/default:
startPoints SbVec3f(0,0,0)maxLifetime 0 (i.e. infinite) maxLength 0 (i.e. infinite) minSpeed 0 (i.e. infinite) integrationStepLengthFactor 0.3 integrationMaxStepNumber 0 (i.e. infinite) integrationDirection FORWARD colors ( SbColor(1,0,0)coloringType COLOR_INHERITED valuesIndex -1 valuesIndexForCellFilter -1 vecsIndex -1 moduleDataMapping NULL
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPoBaseStreamLine.IntegrationDirectionsType of integration direction.-
Nested classes/interfaces inherited from class com.openinventor.meshviz.data.PoMesh
PoMesh.ColoringTypes
-
Nested classes/interfaces inherited from class com.openinventor.meshviz.graph.PoBase
PoBase.NodeWriteFormats, PoBase.TextTypes, PoBase.UpdateMethodTypes
-
Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoNode
SoNode.RenderModes
-
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
-
Field Summary
Fields Modifier and Type Field Description SoMFColorcolorsList of colors used by some derived class to color each streamline.SoSFEnum<PoBaseStreamLine.IntegrationDirections>integrationDirectionDirection of integration.SoSFInt32integrationMaxStepNumberComputing the streamline is done while the number of integration step is less than integrationMaxStepNumber.SoSFFloatintegrationStepLengthFactorIt is a factor of the size of a cell.SoSFFloatmaxLengthThe curvilinear distance between the start-point and the last point of a streamline must be less than maxLength.SoSFFloatmaxLifetimeThe difference between the time of the start-point and the time of the last point of a streamline must be less than maxLifetime.SoSFFloatminSpeedThe streamline ends when it goes through a point where the velocity is less than minSpeed.SoMFVec3fstartPointsStart points of the streamlines.-
Fields inherited from class com.openinventor.meshviz.data.PoMesh
coloringType, creaseAngle, moduleDataMapping, smoothTextureContouring, valuesIndex, valuesIndexForCellFilter, vecsIndex
-
Fields inherited from class com.openinventor.inventor.nodekits.SoBaseKit
boundingBoxIgnoring
-
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
-
Constructor Summary
Constructors Constructor Description PoBaseStreamLine()Constructor.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static SoNodekitCataloggetClassNodekitCatalog()Returns theSoNodekitCatalogfor this class.-
Methods inherited from class com.openinventor.meshviz.data.PoMesh
getDataMapping, getIsovaluesList, getMesh, getModuleDataMapping, setDataMapping, setIsovaluesList, setMesh, setModuleDataMapping
-
Methods inherited from class com.openinventor.meshviz.graph.PoBase
addPostRebuildCallback, addPreRebuildCallback, getDomain, getNodeWriteFormat, getTextType, getUpdateMethod, isBuilt, isModified, isVRML2Mode, rebuild, setDomain, setNodeWriteFormat, setTextType, setUpdateMethod, setVRML2Mode, touchKit
-
Methods inherited from class com.openinventor.inventor.nodekits.SoBaseKit
getNodekitCatalog, getPart, getPart, getPartString, getViewportIsEnabled, getViewportOrigin, getViewportSize, isSearchingChildren, set, set, setPart, setSearchingChildren
-
Methods inherited from class com.openinventor.inventor.nodes.SoNode
affectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderEngineMode, getRenderUnitID, GLRender, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, search, setOverride, touch, write
-
Methods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, setToDefaults
-
Methods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable
-
Methods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
-
-
-
Field Detail
-
startPoints
public final SoMFVec3f startPoints
Start points of the streamlines.SbVec3f(0,0,0)by default.
-
colors
public final SoMFColor colors
List of colors used by some derived class to color each streamline. Empty field by default.
-
maxLifetime
public final SoSFFloat maxLifetime
The difference between the time of the start-point and the time of the last point of a streamline must be less than maxLifetime. maxLifetime <= 0 means an infinite lifetime. 0 by default.
-
maxLength
public final SoSFFloat maxLength
The curvilinear distance between the start-point and the last point of a streamline must be less than maxLength. maxLength <= 0 means an infinite distance. 0 by default.
-
minSpeed
public final SoSFFloat minSpeed
The streamline ends when it goes through a point where the velocity is less than minSpeed. minSpeed <= 0 means an infinite speed. 0 by default.
-
integrationStepLengthFactor
public final SoSFFloat integrationStepLengthFactor
It is a factor of the size of a cell. It represents the gap between two consecutive points of the calculated streamline. The gap depends of the cell's size. If S is the size of the current cell, the gap is S*integrationStepLengthFactor. The lower this step is, the more accurate the streamline is. Setting a value < 1, ensures that each cell which cross the streamline is taken into account. 0.3 by default.
-
integrationMaxStepNumber
public final SoSFInt32 integrationMaxStepNumber
Computing the streamline is done while the number of integration step is less than integrationMaxStepNumber. integrationMaxStepNumber <= 0 means infinite. 0 by default.
-
integrationDirection
public final SoSFEnum<PoBaseStreamLine.IntegrationDirections> integrationDirection
Direction of integration. FORWARD by default.
-
-
Method Detail
-
getClassNodekitCatalog
public static SoNodekitCatalog getClassNodekitCatalog()
Returns theSoNodekitCatalogfor this class.
-
-