86 #ifndef vtkStreamTracer_h
87 #define vtkStreamTracer_h
89 #include "vtkFiltersFlowPathsModule.h"
124 vtkSetVector3Macro(StartPosition,
double);
125 vtkGetVector3Macro(StartPosition,
double);
192 void SetIntegratorType(
int type);
193 int GetIntegratorType();
195 {this->SetIntegratorType(RUNGE_KUTTA2);};
197 {this->SetIntegratorType(RUNGE_KUTTA4);};
199 {this->SetIntegratorType(RUNGE_KUTTA45);};
206 void SetInterpolatorTypeToDataSetPointLocator();
212 void SetInterpolatorTypeToCellLocator();
219 vtkGetMacro(MaximumPropagation,
double);
228 void SetIntegrationStepUnit(
int unit );
240 vtkGetMacro(InitialIntegrationStep,
double);
251 vtkGetMacro(MinimumIntegrationStep,
double);
262 vtkGetMacro(MaximumIntegrationStep,
double);
270 vtkGetMacro(MaximumError,
double);
278 vtkGetMacro(MaximumNumberOfSteps,
vtkIdType);
286 vtkGetMacro(TerminalSpeed,
double);
293 vtkGetMacro(SurfaceStreamlines,
bool);
308 INTERPOLATOR_WITH_CELL_LOCATOR
316 vtkSetClampMacro(IntegrationDirection,
int, FORWARD, BOTH);
317 vtkGetMacro(IntegrationDirection,
int);
319 {this->SetIntegrationDirection(FORWARD);};
321 {this->SetIntegrationDirection(BACKWARD);};
323 {this->SetIntegrationDirection(BOTH);};
333 vtkGetMacro(ComputeVorticity,
bool);
342 vtkGetMacro(RotationScale,
double);
360 void SetInterpolatorType(
int interpType );
372 { vtkErrorMacro( <<
"AddInput() must be called with a vtkDataSet not a vtkDataObject."); };
388 const char *vecFieldName,
391 double& integrationTime);
392 double SimpleIntegrate(
double seed[3],
398 void GenerateNormals(
vtkPolyData* output,
double* firstNormal,
const char *vecName);
403 double StartPosition[3];
421 void ConvertIntervals(
double& step,
double& minStep,
double& maxStep,
423 static double ConvertToLength(
double interval,
int unit,
double cellLength );
453 friend class PStreamTracerUtils;
void SetIntegrationDirectionToBoth()
Specify whether the streamline is integrated in the upstream or downstream direction.
static const double EPSILON
represent and manipulate point attribute data
virtual vtkExecutive * CreateDefaultExecutive()
Create a default executive.
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.
void AddInput(vtkDataObject *)
bool GenerateNormalsInIntegrate
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.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
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.