VTK
|
Streamline generator. More...
#include <vtkStreamTracer.h>
Classes | |
struct | IntervalInformation |
Public Types | |
enum | Units { LENGTH_UNIT = 1, CELL_LENGTH_UNIT = 2 } |
enum | Solvers { RUNGE_KUTTA2, RUNGE_KUTTA4, RUNGE_KUTTA45, NONE, UNKNOWN } |
enum | ReasonForTermination { OUT_OF_DOMAIN = vtkInitialValueProblemSolver::OUT_OF_DOMAIN, NOT_INITIALIZED = vtkInitialValueProblemSolver::NOT_INITIALIZED, UNEXPECTED_VALUE = vtkInitialValueProblemSolver::UNEXPECTED_VALUE, OUT_OF_LENGTH = 4, OUT_OF_STEPS = 5, STAGNATION = 6 } |
enum | { FORWARD, BACKWARD, BOTH } |
enum | { INTERPOLATOR_WITH_DATASET_POINT_LOCATOR, INTERPOLATOR_WITH_CELL_LOCATOR } |
typedef vtkPolyDataAlgorithm | Superclass |
![]() | |
typedef vtkAlgorithm | Superclass |
![]() | |
typedef vtkObject | Superclass |
enum | DesiredOutputPrecision { SINGLE_PRECISION, DOUBLE_PRECISION, DEFAULT_PRECISION } |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkStreamTracer * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetSourceConnection (vtkAlgorithmOutput *algOutput) |
void | SetInterpolatorTypeToDataSetPointLocator () |
void | SetInterpolatorTypeToCellLocator () |
void | SetInterpolatorPrototype (vtkAbstractInterpolatedVelocityField *ivf) |
void | SetInterpolatorType (int interpType) |
virtual void | SetStartPosition (double, double, double) |
virtual void | SetStartPosition (double[3]) |
virtual double * | GetStartPosition () |
virtual void | GetStartPosition (double &, double &, double &) |
virtual void | GetStartPosition (double[3]) |
void | SetSourceData (vtkDataSet *source) |
vtkDataSet * | GetSource () |
void | SetIntegrator (vtkInitialValueProblemSolver *) |
virtual vtkInitialValueProblemSolver * | GetIntegrator () |
void | SetIntegratorType (int type) |
int | GetIntegratorType () |
void | SetIntegratorTypeToRungeKutta2 () |
void | SetIntegratorTypeToRungeKutta4 () |
void | SetIntegratorTypeToRungeKutta45 () |
virtual void | SetMaximumPropagation (double) |
virtual double | GetMaximumPropagation () |
void | SetIntegrationStepUnit (int unit) |
int | GetIntegrationStepUnit () |
virtual void | SetInitialIntegrationStep (double) |
virtual double | GetInitialIntegrationStep () |
virtual void | SetMinimumIntegrationStep (double) |
virtual double | GetMinimumIntegrationStep () |
virtual void | SetMaximumIntegrationStep (double) |
virtual double | GetMaximumIntegrationStep () |
virtual void | SetMaximumError (double) |
virtual double | GetMaximumError () |
virtual void | SetMaximumNumberOfSteps (vtkIdType) |
virtual vtkIdType | GetMaximumNumberOfSteps () |
virtual void | SetTerminalSpeed (double) |
virtual double | GetTerminalSpeed () |
virtual void | SetIntegrationDirection (int) |
virtual int | GetIntegrationDirection () |
void | SetIntegrationDirectionToForward () |
void | SetIntegrationDirectionToBackward () |
void | SetIntegrationDirectionToBoth () |
virtual void | SetComputeVorticity (bool) |
virtual bool | GetComputeVorticity () |
virtual void | SetRotationScale (double) |
virtual double | GetRotationScale () |
![]() | |
vtkPolyDataAlgorithm * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
vtkDataObject * | GetInput () |
vtkDataObject * | GetInput (int port) |
vtkPolyData * | GetPolyDataInput (int port) |
vtkPolyData * | GetOutput () |
vtkPolyData * | GetOutput (int) |
virtual void | SetOutput (vtkDataObject *d) |
virtual int | ProcessRequest (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
void | SetInputData (vtkDataObject *) |
void | SetInputData (int, vtkDataObject *) |
void | AddInputData (vtkDataObject *) |
void | AddInputData (int, vtkDataObject *) |
![]() | |
vtkAlgorithm * | NewInstance () const |
void | PrintSelf (ostream &os, vtkIndent indent) |
int | HasExecutive () |
vtkExecutive * | GetExecutive () |
virtual void | SetExecutive (vtkExecutive *executive) |
virtual int | ModifyRequest (vtkInformation *request, int when) |
vtkInformation * | GetInputPortInformation (int port) |
vtkInformation * | GetOutputPortInformation (int port) |
int | GetNumberOfInputPorts () |
int | GetNumberOfOutputPorts () |
void | UpdateProgress (double amount) |
vtkInformation * | GetInputArrayInformation (int idx) |
void | RemoveAllInputs () |
vtkDataObject * | GetOutputDataObject (int port) |
virtual void | RemoveInputConnection (int port, vtkAlgorithmOutput *input) |
virtual void | RemoveInputConnection (int port, int idx) |
virtual void | RemoveAllInputConnections (int port) |
int | GetNumberOfInputConnections (int port) |
int | GetTotalNumberOfInputConnections () |
vtkAlgorithmOutput * | GetInputConnection (int port, int index) |
vtkAlgorithm * | GetInputAlgorithm (int port, int index, int &algPort) |
vtkAlgorithm * | GetInputAlgorithm (int port, int index) |
vtkExecutive * | GetInputExecutive (int port, int index) |
vtkInformation * | GetInputInformation (int port, int index) |
vtkInformation * | GetOutputInformation (int port) |
virtual void | UpdateInformation () |
virtual void | PropagateUpdateExtent () |
virtual void | UpdateWholeExtent () |
void | ConvertTotalInputToPortConnection (int ind, int &port, int &conn) |
virtual double | ComputePriority () |
int | SetUpdateExtentToWholeExtent (int port) |
int | SetUpdateExtentToWholeExtent () |
void | SetUpdateExtent (int port, int extent[6]) |
int | ProcessRequest (vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo) |
virtual int | ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime) |
virtual vtkInformation * | GetInformation () |
virtual void | SetInformation (vtkInformation *) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
virtual void | SetAbortExecute (int) |
virtual int | GetAbortExecute () |
virtual void | AbortExecuteOn () |
virtual void | AbortExecuteOff () |
virtual void | SetProgress (double) |
virtual double | GetProgress () |
void | SetProgressText (const char *ptext) |
virtual char * | GetProgressText () |
virtual unsigned long | GetErrorCode () |
virtual void | SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name) |
virtual void | SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType) |
virtual void | SetInputArrayToProcess (int idx, vtkInformation *info) |
virtual void | SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName) |
vtkDataObject * | GetInputDataObject (int port, int connection) |
virtual void | SetInputConnection (int port, vtkAlgorithmOutput *input) |
virtual void | SetInputConnection (vtkAlgorithmOutput *input) |
virtual void | AddInputConnection (int port, vtkAlgorithmOutput *input) |
virtual void | AddInputConnection (vtkAlgorithmOutput *input) |
virtual void | SetInputDataObject (int port, vtkDataObject *data) |
virtual void | SetInputDataObject (vtkDataObject *data) |
virtual void | AddInputDataObject (int port, vtkDataObject *data) |
virtual void | AddInputDataObject (vtkDataObject *data) |
vtkAlgorithmOutput * | GetOutputPort (int index) |
vtkAlgorithmOutput * | GetOutputPort () |
vtkAlgorithm * | GetInputAlgorithm () |
vtkExecutive * | GetInputExecutive () |
vtkInformation * | GetInputInformation () |
virtual void | Update (int port) |
virtual void | Update () |
virtual void | SetReleaseDataFlag (int) |
virtual int | GetReleaseDataFlag () |
void | ReleaseDataFlagOn () |
void | ReleaseDataFlagOff () |
int | UpdateExtentIsEmpty (vtkInformation *pinfo, vtkDataObject *output) |
int | UpdateExtentIsEmpty (vtkInformation *pinfo, int extentType) |
void | SetUpdateExtent (int port, int piece, int numPieces, int ghostLevel) |
void | SetUpdateExtent (int piece, int numPieces, int ghostLevel) |
void | SetUpdateExtent (int extent[6]) |
int * | GetUpdateExtent () |
int * | GetUpdateExtent (int port) |
void | GetUpdateExtent (int &x0, int &x1, int &y0, int &y1, int &z0, int &z1) |
void | GetUpdateExtent (int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1) |
void | GetUpdateExtent (int extent[6]) |
void | GetUpdateExtent (int port, int extent[6]) |
int | GetUpdatePiece () |
int | GetUpdatePiece (int port) |
int | GetUpdateNumberOfPieces () |
int | GetUpdateNumberOfPieces (int port) |
int | GetUpdateGhostLevel () |
int | GetUpdateGhostLevel (int port) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkStreamTracer * | SafeDownCast (vtkObjectBase *o) |
static vtkStreamTracer * | New () |
![]() | |
static vtkPolyDataAlgorithm * | New () |
static int | IsTypeOf (const char *type) |
static vtkPolyDataAlgorithm * | SafeDownCast (vtkObjectBase *o) |
![]() | |
static vtkAlgorithm * | New () |
static int | IsTypeOf (const char *type) |
static vtkAlgorithm * | SafeDownCast (vtkObjectBase *o) |
static void | SetDefaultExecutivePrototype (vtkExecutive *proto) |
static vtkInformationIntegerKey * | INPUT_IS_OPTIONAL () |
static vtkInformationIntegerKey * | INPUT_IS_REPEATABLE () |
static vtkInformationInformationVectorKey * | INPUT_REQUIRED_FIELDS () |
static vtkInformationStringVectorKey * | INPUT_REQUIRED_DATA_TYPE () |
static vtkInformationInformationVectorKey * | INPUT_ARRAYS_TO_PROCESS () |
static vtkInformationIntegerKey * | INPUT_PORT () |
static vtkInformationIntegerKey * | INPUT_CONNECTION () |
static vtkInformationIntegerKey * | PRESERVES_DATASET () |
static vtkInformationIntegerKey * | PRESERVES_GEOMETRY () |
static vtkInformationIntegerKey * | PRESERVES_BOUNDS () |
static vtkInformationIntegerKey * | PRESERVES_TOPOLOGY () |
static vtkInformationIntegerKey * | PRESERVES_ATTRIBUTES () |
static vtkInformationIntegerKey * | PRESERVES_RANGES () |
static vtkInformationIntegerKey * | MANAGES_METAINFORMATION () |
Protected Member Functions | |
virtual vtkObjectBase * | NewInstanceInternal () const |
vtkStreamTracer () | |
~vtkStreamTracer () | |
virtual vtkExecutive * | CreateDefaultExecutive () |
void | AddInput (vtkDataObject *) |
virtual int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual int | FillInputPortInformation (int, vtkInformation *) |
void | CalculateVorticity (vtkGenericCell *cell, double pcoords[3], vtkDoubleArray *cellVectors, double vorticity[3]) |
void | Integrate (vtkPointData *inputData, vtkPolyData *output, vtkDataArray *seedSource, vtkIdList *seedIds, vtkIntArray *integrationDirections, double lastPoint[3], vtkAbstractInterpolatedVelocityField *func, int maxCellSize, int vecType, const char *vecFieldName, double &propagation, vtkIdType &numSteps) |
void | SimpleIntegrate (double seed[3], double lastPoint[3], double stepSize, vtkAbstractInterpolatedVelocityField *func) |
int | CheckInputs (vtkAbstractInterpolatedVelocityField *&func, int *maxCellSize) |
void | GenerateNormals (vtkPolyData *output, double *firstNormal, const char *vecName) |
void | ConvertIntervals (double &step, double &minStep, double &maxStep, int direction, double cellLength) |
int | SetupOutput (vtkInformation *inInfo, vtkInformation *outInfo) |
void | InitializeSeeds (vtkDataArray *&seeds, vtkIdList *&seedIds, vtkIntArray *&integrationDirections, vtkDataSet *source) |
![]() | |
vtkPolyDataAlgorithm () | |
~vtkPolyDataAlgorithm () | |
virtual int | RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) |
virtual int | FillOutputPortInformation (int port, vtkInformation *info) |
virtual int | RequestUpdateExtent (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
![]() | |
vtkAlgorithm () | |
~vtkAlgorithm () | |
virtual void | SetNumberOfInputPorts (int n) |
virtual void | SetNumberOfOutputPorts (int n) |
int | InputPortIndexInRange (int index, const char *action) |
int | OutputPortIndexInRange (int index, const char *action) |
int | GetInputArrayAssociation (int idx, vtkInformationVector **inputVector) |
virtual void | ReportReferences (vtkGarbageCollector *) |
virtual void | SetNumberOfInputConnections (int port, int n) |
int | GetInputArrayAssociation (int idx, int connection, vtkInformationVector **inputVector) |
int | GetInputArrayAssociation (int idx, vtkDataObject *input) |
vtkDataArray * | GetInputArrayToProcess (int idx, vtkInformationVector **inputVector) |
vtkDataArray * | GetInputArrayToProcess (int idx, vtkInformationVector **inputVector, int &association) |
vtkDataArray * | GetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector) |
vtkDataArray * | GetInputArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association) |
vtkDataArray * | GetInputArrayToProcess (int idx, vtkDataObject *input) |
vtkDataArray * | GetInputArrayToProcess (int idx, vtkDataObject *input, int &association) |
vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector) |
vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, vtkInformationVector **inputVector, int &association) |
vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector) |
vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, int connection, vtkInformationVector **inputVector, int &association) |
vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, vtkDataObject *input) |
vtkAbstractArray * | GetInputAbstractArrayToProcess (int idx, vtkDataObject *input, int &association) |
vtkInformation * | GetInputArrayFieldInformation (int idx, vtkInformationVector **inputVector) |
virtual void | SetNthInputConnection (int port, int index, vtkAlgorithmOutput *input) |
void | SetInputDataInternal (int port, vtkDataObject *input) |
void | AddInputDataInternal (int port, vtkDataObject *input) |
virtual void | SetErrorCode (unsigned long) |
Static Protected Member Functions | |
static double | ConvertToLength (double interval, int unit, double cellLength) |
static double | ConvertToLength (IntervalInformation &interval, double cellLength) |
![]() | |
static vtkInformationIntegerKey * | PORT_REQUIREMENTS_FILLED () |
Protected Attributes | |
bool | GenerateNormalsInIntegrate |
double | StartPosition [3] |
double | TerminalSpeed |
double | LastUsedStepSize |
double | MaximumPropagation |
double | MinimumIntegrationStep |
double | MaximumIntegrationStep |
double | InitialIntegrationStep |
int | IntegrationStepUnit |
int | IntegrationDirection |
vtkInitialValueProblemSolver * | Integrator |
double | MaximumError |
vtkIdType | MaximumNumberOfSteps |
bool | ComputeVorticity |
double | RotationScale |
vtkAbstractInterpolatedVelocityField * | InterpolatorPrototype |
vtkCompositeDataSet * | InputData |
bool | HasMatchingPointAttributes |
![]() | |
vtkInformation * | Information |
double | Progress |
char * | ProgressText |
unsigned long | ErrorCode |
Static Protected Attributes | |
static const double | EPSILON |
![]() | |
static vtkExecutive * | DefaultExecutivePrototype |
Friends | |
class | PStreamTracerUtils |
Additional Inherited Members | |
![]() | |
int | AbortExecute |
Streamline generator.
vtkStreamTracer is a filter that integrates a vector field to generate streamlines. The integration is performed using a specified integrator, by default Runge-Kutta2.
vtkStreamTracer produces polylines as the output, with each cell (i.e., polyline) representing a streamline. The attribute values associated with each streamline are stored in the cell data, whereas those associated with streamline-points are stored in the point data.
vtkStreamTracer supports forward (the default), backward, and combined (i.e., BOTH) integration. The length of a streamline is governed by specifying a maximum value either in physical arc length or in (local) cell length. Otherwise, the integration terminates upon exiting the flow field domain, or if the particle speed is reduced to a value less than a specified terminal speed, or when a maximum number of steps is completed. The specific reason for the termination is stored in a cell array named ReasonForTermination.
Note that normalized vectors are adopted in streamline integration, which achieves high numerical accuracy/smoothness of flow lines that is particularly guaranteed for Runge-Kutta45 with adaptive step size and error control). In support of this feature, the underlying step size is ALWAYS in arc length unit (LENGTH_UNIT) while the 'real' time interval (virtual for steady flows) that a particle actually takes to trave in a single step is obtained by dividing the arc length by the LOCAL speed. The overall elapsed time (i.e., the life span) of the particle is the sum of those individual step-wise time intervals.
The quality of streamline integration can be controlled by setting the initial integration step (InitialIntegrationStep), particularly for Runge-Kutta2 and Runge-Kutta4 (with a fixed step size), and in the case of Runge-Kutta45 (with an adaptive step size and error control) the minimum integration step, the maximum integration step, and the maximum error. These steps are in either LENGTH_UNIT or CELL_LENGTH_UNIT while the error is in physical arc length. For the former two integrators, there is a trade-off between integration speed and streamline quality.
The integration time, vorticity, rotation and angular velocity are stored in point data arrays named "IntegrationTime", "Vorticity", "Rotation" and "AngularVelocity", respectively (vorticity, rotation and angular velocity are computed only when ComputeVorticity is on). All point data attributes in the source dataset are interpolated on the new streamline points.
vtkStreamTracer supports integration through any type of dataset. Thus if the dataset contains 2D cells like polygons or triangles, the integration is constrained to lie on the surface defined by 2D cells.
The starting point, or the so-called 'seed', of a streamline may be set in two different ways. Starting from global x-y-z "position" allows you to start a single trace at a specified x-y-z coordinate. If you specify a source object, traces will be generated from each point in the source that is inside the dataset.
Definition at line 102 of file vtkStreamTracer.h.
Definition at line 105 of file vtkStreamTracer.h.
Enumerator | |
---|---|
LENGTH_UNIT | |
CELL_LENGTH_UNIT |
Definition at line 144 of file vtkStreamTracer.h.
Enumerator | |
---|---|
RUNGE_KUTTA2 | |
RUNGE_KUTTA4 | |
RUNGE_KUTTA45 | |
NONE | |
UNKNOWN |
Definition at line 150 of file vtkStreamTracer.h.
Enumerator | |
---|---|
OUT_OF_DOMAIN | |
NOT_INITIALIZED | |
UNEXPECTED_VALUE | |
OUT_OF_LENGTH | |
OUT_OF_STEPS | |
STAGNATION |
Definition at line 159 of file vtkStreamTracer.h.
anonymous enum |
Enumerator | |
---|---|
FORWARD | |
BACKWARD | |
BOTH |
Definition at line 258 of file vtkStreamTracer.h.
anonymous enum |
Enumerator | |
---|---|
INTERPOLATOR_WITH_DATASET_POINT_LOCATOR | |
INTERPOLATOR_WITH_CELL_LOCATOR |
Definition at line 265 of file vtkStreamTracer.h.
|
protected |
|
protected |
|
static |
|
virtual |
Reimplemented from vtkPolyDataAlgorithm.
Reimplemented in vtkTemporalStreamTracer, vtkPTemporalStreamTracer, and vtkPStreamTracer.
|
static |
|
protectedvirtual |
Reimplemented from vtkPolyDataAlgorithm.
Reimplemented in vtkTemporalStreamTracer, vtkPTemporalStreamTracer, and vtkPStreamTracer.
vtkStreamTracer* vtkStreamTracer::NewInstance | ( | ) | const |
void vtkStreamTracer::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) |
|
static |
Construct object to start from position (0,0,0), with forward integration, terminal speed 1.0E-12, vorticity computation on, integration step size 0.5 (in cell length unit), maximum number of steps 2000, using Runge-Kutta2, and maximum propagation 1.0 (in arc length unit).
|
virtual |
Specify the starting point (seed) of a streamline in the global coordinate system. Search must be performed to find the initial cell from which to start integration.
|
virtual |
Specify the starting point (seed) of a streamline in the global coordinate system. Search must be performed to find the initial cell from which to start integration.
|
virtual |
Specify the starting point (seed) of a streamline in the global coordinate system. Search must be performed to find the initial cell from which to start integration.
|
virtual |
Specify the starting point (seed) of a streamline in the global coordinate system. Search must be performed to find the initial cell from which to start integration.
|
virtual |
Specify the starting point (seed) of a streamline in the global coordinate system. Search must be performed to find the initial cell from which to start integration.
void vtkStreamTracer::SetSourceData | ( | vtkDataSet * | source | ) |
Specify the source object used to generate starting points (seeds). Old style. Do not use.
vtkDataSet* vtkStreamTracer::GetSource | ( | ) |
Specify the source object used to generate starting points (seeds). Old style. Do not use.
void vtkStreamTracer::SetSourceConnection | ( | vtkAlgorithmOutput * | algOutput | ) |
Specify the source object used to generate starting points (seeds). New style.
void vtkStreamTracer::SetIntegrator | ( | vtkInitialValueProblemSolver * | ) |
Set/get the integrator type to be used for streamline generation. The object passed is not actually used but is cloned with NewInstance in the process of integration (prototype pattern). The default is Runge-Kutta2. The integrator can also be changed using SetIntegratorType. The recognized solvers are: RUNGE_KUTTA2 = 0 RUNGE_KUTTA4 = 1 RUNGE_KUTTA45 = 2
|
virtual |
Set/get the integrator type to be used for streamline generation. The object passed is not actually used but is cloned with NewInstance in the process of integration (prototype pattern). The default is Runge-Kutta2. The integrator can also be changed using SetIntegratorType. The recognized solvers are: RUNGE_KUTTA2 = 0 RUNGE_KUTTA4 = 1 RUNGE_KUTTA45 = 2
void vtkStreamTracer::SetIntegratorType | ( | int | type | ) |
Set/get the integrator type to be used for streamline generation. The object passed is not actually used but is cloned with NewInstance in the process of integration (prototype pattern). The default is Runge-Kutta2. The integrator can also be changed using SetIntegratorType. The recognized solvers are: RUNGE_KUTTA2 = 0 RUNGE_KUTTA4 = 1 RUNGE_KUTTA45 = 2
int vtkStreamTracer::GetIntegratorType | ( | ) |
Set/get the integrator type to be used for streamline generation. The object passed is not actually used but is cloned with NewInstance in the process of integration (prototype pattern). The default is Runge-Kutta2. The integrator can also be changed using SetIntegratorType. The recognized solvers are: RUNGE_KUTTA2 = 0 RUNGE_KUTTA4 = 1 RUNGE_KUTTA45 = 2
|
inline |
Set/get the integrator type to be used for streamline generation. The object passed is not actually used but is cloned with NewInstance in the process of integration (prototype pattern). The default is Runge-Kutta2. The integrator can also be changed using SetIntegratorType. The recognized solvers are: RUNGE_KUTTA2 = 0 RUNGE_KUTTA4 = 1 RUNGE_KUTTA45 = 2
Definition at line 181 of file vtkStreamTracer.h.
|
inline |
Set/get the integrator type to be used for streamline generation. The object passed is not actually used but is cloned with NewInstance in the process of integration (prototype pattern). The default is Runge-Kutta2. The integrator can also be changed using SetIntegratorType. The recognized solvers are: RUNGE_KUTTA2 = 0 RUNGE_KUTTA4 = 1 RUNGE_KUTTA45 = 2
Definition at line 183 of file vtkStreamTracer.h.
|
inline |
Set/get the integrator type to be used for streamline generation. The object passed is not actually used but is cloned with NewInstance in the process of integration (prototype pattern). The default is Runge-Kutta2. The integrator can also be changed using SetIntegratorType. The recognized solvers are: RUNGE_KUTTA2 = 0 RUNGE_KUTTA4 = 1 RUNGE_KUTTA45 = 2
Definition at line 185 of file vtkStreamTracer.h.
void vtkStreamTracer::SetInterpolatorTypeToDataSetPointLocator | ( | ) |
Set the velocity field interpolator type to the one involving a dataset point locator.
void vtkStreamTracer::SetInterpolatorTypeToCellLocator | ( | ) |
Set the velocity field interpolator type to the one involving a cell locator.
|
virtual |
Specify the maximum length of a streamline expressed in LENGTH_UNIT.
|
virtual |
Specify the maximum length of a streamline expressed in LENGTH_UNIT.
void vtkStreamTracer::SetIntegrationStepUnit | ( | int | unit | ) |
Specify a uniform integration step unit for MinimumIntegrationStep, InitialIntegrationStep, and MaximumIntegrationStep. NOTE: The valid unit is now limited to only LENGTH_UNIT (1) and CELL_LENGTH_UNIT (2), EXCLUDING the previously-supported TIME_UNIT.
|
inline |
Specify a uniform integration step unit for MinimumIntegrationStep, InitialIntegrationStep, and MaximumIntegrationStep. NOTE: The valid unit is now limited to only LENGTH_UNIT (1) and CELL_LENGTH_UNIT (2), EXCLUDING the previously-supported TIME_UNIT.
Definition at line 209 of file vtkStreamTracer.h.
|
virtual |
Specify the Initial step size used for line integration, expressed in: LENGTH_UNIT = 1 CELL_LENGTH_UNIT = 2 (either the starting size for an adaptive integrator, e.g., RK45, or the constant / fixed size for non-adaptive ones, i.e., RK2 and RK4)
|
virtual |
Specify the Initial step size used for line integration, expressed in: LENGTH_UNIT = 1 CELL_LENGTH_UNIT = 2 (either the starting size for an adaptive integrator, e.g., RK45, or the constant / fixed size for non-adaptive ones, i.e., RK2 and RK4)
|
virtual |
Specify the Minimum step size used for line integration, expressed in: LENGTH_UNIT = 1 CELL_LENGTH_UNIT = 2 (Only valid for an adaptive integrator, e.g., RK45)
|
virtual |
Specify the Minimum step size used for line integration, expressed in: LENGTH_UNIT = 1 CELL_LENGTH_UNIT = 2 (Only valid for an adaptive integrator, e.g., RK45)
|
virtual |
Specify the Maximum step size used for line integration, expressed in: LENGTH_UNIT = 1 CELL_LENGTH_UNIT = 2 (Only valid for an adaptive integrator, e.g., RK45)
|
virtual |
Specify the Maximum step size used for line integration, expressed in: LENGTH_UNIT = 1 CELL_LENGTH_UNIT = 2 (Only valid for an adaptive integrator, e.g., RK45)
|
virtual |
Specify the maximum error tolerated throughout streamline integration.
|
virtual |
Specify the maximum error tolerated throughout streamline integration.
|
virtual |
Specify the maximum number of steps for integrating a streamline.
|
virtual |
Specify the maximum number of steps for integrating a streamline.
|
virtual |
Specify the terminal speed value, below which integration is terminated.
|
virtual |
Specify the terminal speed value, below which integration is terminated.
|
virtual |
Specify whether the streamline is integrated in the upstream or downstream direction.
|
virtual |
Specify whether the streamline is integrated in the upstream or downstream direction.
|
inline |
Specify whether the streamline is integrated in the upstream or downstream direction.
Definition at line 277 of file vtkStreamTracer.h.
|
inline |
Specify whether the streamline is integrated in the upstream or downstream direction.
Definition at line 279 of file vtkStreamTracer.h.
|
inline |
Specify whether the streamline is integrated in the upstream or downstream direction.
Definition at line 281 of file vtkStreamTracer.h.
|
virtual |
Turn on/off vorticity computation at streamline points (necessary for generating proper stream-ribbons using the vtkRibbonFilter.
|
virtual |
Turn on/off vorticity computation at streamline points (necessary for generating proper stream-ribbons using the vtkRibbonFilter.
|
virtual |
This can be used to scale the rate with which the streamribbons twist. The default is 1.
|
virtual |
This can be used to scale the rate with which the streamribbons twist. The default is 1.
void vtkStreamTracer::SetInterpolatorPrototype | ( | vtkAbstractInterpolatedVelocityField * | ivf | ) |
The object used to interpolate the velocity field during integration is of the same class as this prototype.
void vtkStreamTracer::SetInterpolatorType | ( | int | interpType | ) |
Set the type of the velocity field interpolator to determine whether vtkInterpolatedVelocityField (INTERPOLATOR_WITH_DATASET_POINT_LOCATOR) or vtkCellLocatorInterpolatedVelocityField (INTERPOLATOR_WITH_CELL_LOCATOR) is employed for locating cells during streamline integration. The latter (adopting vtkAbstractCellLocator sub-classes such as vtkCellLocator and vtkModifiedBSPTree) is more robust then the former (through vtkDataSet / vtkPointSet::FindCell() coupled with vtkPointLocator).
|
protectedvirtual |
Create a default executive. If the DefaultExecutivePrototype is set, a copy of it is created in CreateDefaultExecutive() using NewInstance(). Otherwise, vtkStreamingDemandDrivenPipeline is created.
Reimplemented from vtkAlgorithm.
|
inlineprotected |
Definition at line 323 of file vtkStreamTracer.h.
|
protectedvirtual |
This is called by the superclass. This is the method you should override.
Reimplemented from vtkPolyDataAlgorithm.
Reimplemented in vtkTemporalStreamTracer, vtkPTemporalStreamTracer, and vtkPStreamTracer.
|
protectedvirtual |
Fill the input port information objects for this algorithm. This is invoked by the first call to GetInputPortInformation for each port so subclasses can specify what they can handle.
Reimplemented from vtkPolyDataAlgorithm.
Reimplemented in vtkTemporalStreamTracer.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
staticprotected |
|
protected |
|
protected |
|
friend |
Definition at line 404 of file vtkStreamTracer.h.
|
protected |
Definition at line 351 of file vtkStreamTracer.h.
|
protected |
Definition at line 354 of file vtkStreamTracer.h.
|
staticprotected |
Definition at line 356 of file vtkStreamTracer.h.
|
protected |
Definition at line 357 of file vtkStreamTracer.h.
|
protected |
Definition at line 359 of file vtkStreamTracer.h.
|
protected |
Definition at line 368 of file vtkStreamTracer.h.
|
protected |
Definition at line 369 of file vtkStreamTracer.h.
|
protected |
Definition at line 370 of file vtkStreamTracer.h.
|
protected |
Definition at line 371 of file vtkStreamTracer.h.
|
protected |
Definition at line 387 of file vtkStreamTracer.h.
|
protected |
Definition at line 388 of file vtkStreamTracer.h.
|
protected |
Definition at line 391 of file vtkStreamTracer.h.
|
protected |
Definition at line 393 of file vtkStreamTracer.h.
|
protected |
Definition at line 394 of file vtkStreamTracer.h.
|
protected |
Definition at line 396 of file vtkStreamTracer.h.
|
protected |
Definition at line 397 of file vtkStreamTracer.h.
|
protected |
Definition at line 399 of file vtkStreamTracer.h.
|
protected |
Definition at line 401 of file vtkStreamTracer.h.
|
protected |
Definition at line 402 of file vtkStreamTracer.h.