92 #ifndef vtkEvenlySpacedStreamlines2D_h 93 #define vtkEvenlySpacedStreamlines2D_h 95 #include "vtkFiltersFlowPathsModule.h" 138 vtkSetVector3Macro(StartPosition,
double);
139 vtkGetVector3Macro(StartPosition,
double);
154 void SetIntegratorType(
int type);
155 int GetIntegratorType();
156 void SetIntegratorTypeToRungeKutta2();
157 void SetIntegratorTypeToRungeKutta4();
164 void SetInterpolatorTypeToDataSetPointLocator();
170 void SetInterpolatorTypeToCellLocator();
178 void SetIntegrationStepUnit(
int unit );
185 vtkSetMacro(MaximumNumberOfSteps,
vtkIdType);
186 vtkGetMacro(MaximumNumberOfSteps,
vtkIdType);
194 vtkSetMacro(MinimumNumberOfLoopPoints,
vtkIdType);
195 vtkGetMacro(MinimumNumberOfLoopPoints,
vtkIdType);
207 vtkSetMacro(InitialIntegrationStep,
double);
208 vtkGetMacro(InitialIntegrationStep,
double);
216 vtkSetMacro(SeparatingDistance,
double);
217 vtkGetMacro(SeparatingDistance,
double);
225 vtkSetMacro(SeparatingDistanceRatio,
double);
226 vtkGetMacro(SeparatingDistanceRatio,
double);
234 vtkSetMacro(ClosedLoopMaximumDistance,
double);
235 vtkGetMacro(ClosedLoopMaximumDistance,
double);
244 vtkSetMacro(LoopAngle,
double);
245 vtkGetMacro(LoopAngle,
double);
253 vtkSetMacro(TerminalSpeed,
double);
254 vtkGetMacro(TerminalSpeed,
double);
263 vtkSetMacro(ComputeVorticity,
bool);
264 vtkGetMacro(ComputeVorticity,
bool);
282 void SetInterpolatorType(
int interpType );
299 vtkErrorMacro(<<
"AddInput() must be called with a vtkDataSet not a vtkDataObject.");
309 double ConvertToLength(
double interval,
int unit,
double cellLength );
312 void InitializeSuperposedGrid(
double* bounds);
314 void AddToCurrentPoints(
vtkIdType pointId);
315 template<
typename T>
void InitializePoints(T&
points);
316 void InitializeMinPointIds();
318 static bool IsStreamlineLooping(
321 static bool IsStreamlineTooCloseToOthers(
324 template<
typename CellCheckerType>
325 bool ForEachCell(
double*
point, CellCheckerType checker,
329 template <
int distanceType>
330 bool IsTooClose(
double* point,
vtkIdType cellId,
333 bool IsLooping(
double* point,
vtkIdType cellId,
335 const char* GetInputArrayToProcessName();
336 int ComputeCellLength(
double* cellLength);
339 double StartPosition[3];
376 std::vector<std::vector<std::array<double,3> > >
AllPoints;
double InitialIntegrationStep
vtkIdType MaximumNumberOfSteps
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
std::vector< std::vector< std::array< double, 3 > > > AllPoints
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
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.