80 #ifndef vtkStreamTracer_h
81 #define vtkStreamTracer_h
83 #include "vtkFiltersFlowPathsModule.h"
118 vtkSetVector3Macro(StartPosition,
double);
119 vtkGetVector3Macro(StartPosition,
double);
186 void SetIntegratorType(
int type);
187 int GetIntegratorType();
189 {this->SetIntegratorType(RUNGE_KUTTA2);};
191 {this->SetIntegratorType(RUNGE_KUTTA4);};
193 {this->SetIntegratorType(RUNGE_KUTTA45);};
200 void SetInterpolatorTypeToDataSetPointLocator();
206 void SetInterpolatorTypeToCellLocator();
213 vtkGetMacro(MaximumPropagation,
double);
222 void SetIntegrationStepUnit(
int unit );
234 vtkGetMacro(InitialIntegrationStep,
double);
245 vtkGetMacro(MinimumIntegrationStep,
double);
256 vtkGetMacro(MaximumIntegrationStep,
double);
264 vtkGetMacro(MaximumError,
double);
272 vtkGetMacro(MaximumNumberOfSteps,
vtkIdType);
280 vtkGetMacro(TerminalSpeed,
double);
287 vtkGetMacro(SurfaceStreamlines,
bool);
302 INTERPOLATOR_WITH_CELL_LOCATOR
310 vtkSetClampMacro(IntegrationDirection,
int, FORWARD, BOTH);
311 vtkGetMacro(IntegrationDirection,
int);
313 {this->SetIntegrationDirection(FORWARD);};
315 {this->SetIntegrationDirection(BACKWARD);};
317 {this->SetIntegrationDirection(BOTH);};
327 vtkGetMacro(ComputeVorticity,
bool);
336 vtkGetMacro(RotationScale,
double);
354 void SetInterpolatorType(
int interpType );
366 { vtkErrorMacro( <<
"AddInput() must be called with a vtkDataSet not a vtkDataObject."); };
382 const
char *vecFieldName,
385 double& integrationTime);
386 double SimpleIntegrate(
double seed[3],
392 void GenerateNormals(
vtkPolyData* output,
double* firstNormal, const
char *vecName);
394 bool GenerateNormalsInIntegrate;
397 double StartPosition[3];
399 static const
double EPSILON;
400 double TerminalSpeed;
402 double LastUsedStepSize;
415 void ConvertIntervals(
double& step,
double& minStep,
double& maxStep,
417 static double ConvertToLength(
double interval,
int unit,
double cellLength );
447 friend class PStreamTracerUtils;
void SetIntegrationDirectionToBoth()
Specify whether the streamline is integrated in the upstream or downstream direction.
represent and manipulate point attribute data
abstract class to specify dataset behavior
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
An abstract class for obtaining the interpolated velocity values at a point.
vtkCompositeDataSet * InputData
concrete dataset represents vertices, lines, polygons, and triangle strips
Superclass for all pipeline executives in VTK.
double MinimumIntegrationStep
provides thread-safe access to cells
vtkIdType MaximumNumberOfSteps
Proxy object to connect input/output ports.
dynamic, self-adjusting array of double
static vtkPolyDataAlgorithm * New()
void SetIntegrationDirectionToForward()
Specify whether the streamline is integrated in the upstream or downstream direction.
dynamic, self-adjusting array of int
abstract superclass for composite (multi-block or AMR) datasets
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
int GetIntegrationStepUnit()
list of point or cell ids
vtkInitialValueProblemSolver * Integrator
abstract superclass for arrays of numeric data
void SetIntegratorTypeToRungeKutta4()
Set/get the integrator type to be used for streamline generation.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
double MaximumIntegrationStep
void SetIntegratorTypeToRungeKutta2()
Set/get the integrator type to be used for streamline generation.
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
void SetIntegratorTypeToRungeKutta45()
Set/get the integrator type to be used for streamline generation.
double InitialIntegrationStep
vtkAbstractInterpolatedVelocityField * InterpolatorPrototype
void SetIntegrationDirectionToBackward()
Specify whether the streamline is integrated in the upstream or downstream direction.
double MaximumPropagation
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
bool HasMatchingPointAttributes
general representation of visualization data
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Integrate a set of ordinary differential equations (initial value problem) in time.