80 #ifndef vtkEvenlySpacedStreamlines2D_h
81 #define vtkEvenlySpacedStreamlines2D_h
83 #include "vtkFiltersFlowPathsModule.h"
89 VTK_ABI_NAMESPACE_BEGIN
126 vtkSetVector3Macro(StartPosition,
double);
127 vtkGetVector3Macro(StartPosition,
double);
142 void SetIntegratorType(
int type);
143 int GetIntegratorType();
144 void SetIntegratorTypeToRungeKutta2();
145 void SetIntegratorTypeToRungeKutta4();
152 void SetInterpolatorTypeToDataSetPointLocator();
158 void SetInterpolatorTypeToCellLocator();
166 void SetIntegrationStepUnit(
int unit);
173 vtkSetMacro(MaximumNumberOfSteps,
vtkIdType);
174 vtkGetMacro(MaximumNumberOfSteps,
vtkIdType);
182 vtkSetMacro(MinimumNumberOfLoopPoints,
vtkIdType);
183 vtkGetMacro(MinimumNumberOfLoopPoints,
vtkIdType);
194 vtkSetMacro(InitialIntegrationStep,
double);
195 vtkGetMacro(InitialIntegrationStep,
double);
203 vtkSetMacro(SeparatingDistance,
double);
204 vtkGetMacro(SeparatingDistance,
double);
212 vtkSetMacro(SeparatingDistanceRatio,
double);
213 vtkGetMacro(SeparatingDistanceRatio,
double);
221 vtkSetMacro(ClosedLoopMaximumDistance,
double);
222 vtkGetMacro(ClosedLoopMaximumDistance,
double);
231 vtkSetMacro(LoopAngle,
double);
232 vtkGetMacro(LoopAngle,
double);
239 vtkSetMacro(TerminalSpeed,
double);
240 vtkGetMacro(TerminalSpeed,
double);
249 vtkSetMacro(ComputeVorticity,
bool);
250 vtkGetMacro(ComputeVorticity,
bool);
267 void SetInterpolatorType(
int interpType);
284 vtkErrorMacro(<<
"AddInput() must be called with a vtkDataSet not a vtkDataObject.");
292 double ConvertToLength(
double interval,
int unit,
double cellLength);
295 void InitializeSuperposedGrid(
double* bounds);
297 void AddToCurrentPoints(
vtkIdType pointId);
298 template <
typename T>
299 void InitializePoints(T&
points);
300 void InitializeMinPointIds();
302 static bool IsStreamlineLooping(
304 static bool IsStreamlineTooCloseToOthers(
306 template <
typename CellCheckerType>
309 template <
int distanceType>
314 const char* GetInputArrayToProcessName();
315 int ComputeCellLength(
double* cellLength);
318 double StartPosition[3];
355 std::vector<std::vector<std::array<double, 3>>>
AllPoints;
378 VTK_ABI_NAMESPACE_END
double InitialIntegrationStep
vtkIdType MaximumNumberOfSteps
void GetBounds(T a, double bds[6])
double ClosedLoopMaximumDistance
void AddInput(vtkDataObject *)
vtkPolyDataCollection * Streamlines
Evenly spaced streamline generator for 2D.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
vtkIdType MinimumNumberOfStreamlinePoints
std::vector< std::vector< vtkIdType > > CurrentPoints
double SeparatingDistanceRatio
vtkAbstractInterpolatedVelocityField * InterpolatorPrototype
An abstract class for obtaining the interpolated velocity values at a point.
vtkIdType MinimumNumberOfLoopPoints
concrete dataset represents vertices, lines, polygons, and triangle strips
Superclass for all pipeline executives in VTK.
provides thread-safe access to cells
dynamic, self-adjusting array of double
static vtkPolyDataAlgorithm * New()
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
std::vector< vtkIdType > MinPointIds
topologically and geometrically regular array of data
list of point or cell ids
abstract superclass for arrays of numeric data
std::vector< std::vector< std::array< double, 3 > > > AllPoints
vtkInitialValueProblemSolver * Integrator
vtkCompositeDataSet * InputData
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
double SeparatingDistanceArcLength
DistanceType
Do we test for separating distance or a ratio of the separating distance.
int GetIntegrationStepUnit()
double SeparatingDistance
maintain a list of polygonal data objects
general representation of visualization data
vtkImageData * SuperposedGrid
double ClosedLoopMaximumDistanceArcLength
represent and manipulate 3D points
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.