 |
VTK
9.1.0
|
Go to the documentation of this file.
66 #ifndef vtkGenericStreamTracer_h
67 #define vtkGenericStreamTracer_h
69 #include "vtkFiltersGenericModule.h"
103 vtkSetVector3Macro(StartPosition,
double);
104 vtkGetVector3Macro(StartPosition,
double);
187 this->SetMaximumPropagationUnit(CELL_LENGTH_UNIT);
208 this->SetMinimumIntegrationStepUnit(LENGTH_UNIT);
212 this->SetMinimumIntegrationStepUnit(CELL_LENGTH_UNIT);
233 this->SetMaximumIntegrationStepUnit(LENGTH_UNIT);
237 this->SetMaximumIntegrationStepUnit(CELL_LENGTH_UNIT);
259 this->SetInitialIntegrationStepUnit(LENGTH_UNIT);
263 this->SetInitialIntegrationStepUnit(CELL_LENGTH_UNIT);
273 vtkSetMacro(MaximumError,
double);
274 vtkGetMacro(MaximumError,
double);
290 vtkSetMacro(TerminalSpeed,
double);
291 vtkGetMacro(TerminalSpeed,
double);
300 this->SetInitialIntegrationStepUnit(unit);
301 this->SetMinimumIntegrationStepUnit(unit);
302 this->SetMaximumIntegrationStepUnit(unit);
318 vtkSetClampMacro(IntegrationDirection,
int, FORWARD, BOTH);
319 vtkGetMacro(IntegrationDirection,
int);
341 vtkSetMacro(RotationScale,
double);
342 vtkGetMacro(RotationScale,
double);
351 vtkGetStringMacro(InputVectorsSelection);
373 vtkErrorMacro(<<
"AddInput() must be called with a vtkGenericDataSet not a vtkDataObject.");
398 vtkSetStringMacro(InputVectorsSelection);
402 double StartPosition[3];
428 double& step,
double& minStep,
double& maxStep,
int direction,
double cellLength,
double speed);
void SetMinimumIntegrationStepUnit(int unit)
Specify the minimum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetIntegrator(vtkInitialValueProblemSolver *)
Set/get the integrator type to be used in the stream line calculation.
IntervalInformation MaximumPropagation
static double ConvertToUnit(IntervalInformation &interval, int unit, double cellLength, double speed)
static double ConvertToTime(IntervalInformation &interval, double cellLength, double speed)
void SetMinimumIntegrationStep(int unit, double step)
Specify the minimum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetInterpolatorPrototype(vtkGenericInterpolatedVelocityField *ivf)
The object used to interpolate the velocity field during integration is of the same class as this pro...
void SetSourceData(vtkDataSet *source)
Specify the source object used to generate starting points.
int GetMaximumIntegrationStepUnit()
Specify the maximum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetInitialIntegrationStep(int unit, double step)
Specify the initial step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
int GetMaximumPropagationUnit()
Specify the maximum length of the streamlines expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT = 1 ...
void SimpleIntegrate(double seed[3], double lastPoint[3], double delt, vtkGenericInterpolatedVelocityField *func)
int GetIntegratorType()
Set/get the integrator type to be used in the stream line calculation.
void SetMaximumPropagation(double max)
Specify the maximum length of the streamlines expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT = 1 ...
Interface for obtaining interpolated velocity values.
void SetIntegratorTypeToRungeKutta4()
Set/get the integrator type to be used in the stream line calculation.
void SetMaximumIntegrationStepUnitToCellLengthUnit()
Specify the maximum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
IntervalInformation MinimumIntegrationStep
void Integrate(vtkGenericDataSet *input0, vtkPolyData *output, vtkDataArray *seedSource, vtkIdList *seedIds, vtkIntArray *integrationDirections, double lastPoint[3], vtkGenericInterpolatedVelocityField *func)
IntervalInformation InitialIntegrationStep
void SetIntegratorTypeToRungeKutta2()
Set/get the integrator type to be used in the stream line calculation.
void SetIntegratorTypeToRungeKutta45()
Set/get the integrator type to be used in the stream line calculation.
IntervalInformation MaximumIntegrationStep
void SetInitialIntegrationStepUnitToLengthUnit()
Specify the initial step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
abstract superclass for arrays of numeric data
int GetMinimumIntegrationStepUnit()
Specify the minimum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetMaximumIntegrationStepUnitToTimeUnit()
Specify the maximum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetInitialIntegrationStepUnit(int unit)
Specify the initial step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
vtkDataSet * GetSource()
Specify the source object used to generate starting points.
static const double EPSILON
void SetInitialIntegrationStepUnitToTimeUnit()
Specify the initial step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
defines dataset interface
~vtkGenericStreamTracer() override
double GetMaximumPropagation()
Specify the maximum length of the streamlines expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT = 1 ...
vtkIdType MaximumNumberOfSteps
void SetMaximumPropagationUnitToLengthUnit()
Specify the maximum length of the streamlines expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT = 1 ...
vtkGenericInterpolatedVelocityField * InterpolatorPrototype
void SetMaximumIntegrationStepUnitToLengthUnit()
Specify the maximum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetIntegrationDirectionToForward()
Specify whether the streamtrace will be generated in the upstream or downstream direction.
void SetMaximumIntegrationStep(int unit, double step)
Specify the maximum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void InitializeSeeds(vtkDataArray *&seeds, vtkIdList *&seedIds, vtkIntArray *&integrationDirections)
int GetInitialIntegrationStepUnit()
Specify the initial step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetIntervalInformation(int unit, double interval, IntervalInformation ¤tValues)
void SetMaximumPropagationUnitToCellLengthUnit()
Specify the maximum length of the streamlines expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT = 1 ...
void SetMaximumIntegrationStepUnit(int unit)
Specify the maximum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void SetInitialIntegrationStepUnitToCellLengthUnit()
Specify the initial step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
int GenerateNormalsInIntegrate
a simple class to control print indentation
static double ConvertToCellLength(IntervalInformation &interval, double cellLength, double speed)
dynamic, self-adjusting array of int
void CalculateVorticity(vtkGenericAdaptorCell *cell, double pcoords[3], vtkGenericAttribute *attribute, double vorticity[3])
Compute the vorticity at point ‘pcoords’ in cell ‘cell’ for the vector attribute ‘attribute’.
void AddInputData(vtkGenericDataSet *in)
Add a dataset to the list inputs.
list of point or cell ids
void SetMaximumPropagationUnit(int unit)
Specify the maximum length of the streamlines expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT = 1 ...
double GetMinimumIntegrationStep()
Specify the minimum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetIntegrationDirectionToBackward()
Specify whether the streamtrace will be generated in the upstream or downstream direction.
void SetMaximumPropagationUnitToTimeUnit()
Specify the maximum length of the streamlines expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT = 1 ...
void SetMaximumIntegrationStep(double step)
Specify the maximum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void GenerateNormals(vtkPolyData *output, double *firstNormal)
double GetMaximumIntegrationStep()
Specify the maximum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetIntegratorType(int type)
Set/get the integrator type to be used in the stream line calculation.
abstract class to specify dataset behavior
double GetInitialIntegrationStep()
Specify the initial step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetIntegrationDirectionToBoth()
Specify whether the streamtrace will be generated in the upstream or downstream direction.
vtkTypeBool ComputeVorticity
void SetIntegrationStepUnit(int unit)
Simplified API to set an homogeneous unit across Min/Max/Init IntegrationStepUnit.
void ConvertIntervals(double &step, double &minStep, double &maxStep, int direction, double cellLength, double speed)
char * InputVectorsSelection
Proxy object to connect input/output ports.
void SetMinimumIntegrationStepUnitToLengthUnit()
Specify the minimum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
concrete dataset represents vertices, lines, polygons, and triangle strips
void SetMinimumIntegrationStepUnitToCellLengthUnit()
Specify the minimum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetMaximumPropagation(int unit, double max)
Specify the maximum length of the streamlines expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT = 1 ...
void SetInitialIntegrationStep(double step)
Specify the initial step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SetIntervalInformation(int unit, IntervalInformation ¤tValues)
abstract class defined API for attribute data
vtkInitialValueProblemSolver * Integrator
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
void SetMinimumIntegrationStep(double step)
Specify the minimum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
Integrate a set of ordinary differential equations (initial value problem) in time.
general representation of visualization data
static double ConvertToLength(IntervalInformation &interval, double cellLength, double speed)
static vtkGenericStreamTracer * New()
Construct object to start from position (0,0,0), integrate forward, terminal speed 1....
void SetMinimumIntegrationStepUnitToTimeUnit()
Specify the minimum step used in the integration expressed in one of the: TIME_UNIT = 0 LENGTH_UNIT =...
void SelectInputVectors(const char *fieldName)
If you want to generate traces using an arbitrary vector array, then set its name here.
int CheckInputs(vtkGenericInterpolatedVelocityField *&func, vtkInformationVector **inputVector)
void SetSourceConnection(vtkAlgorithmOutput *algOutput)
Specify the source object used to generate starting points (seeds).
Superclass for algorithms that produce only polydata as output.
void AddInput(vtkDataObject *)