Go to the documentation of this file.
48 #ifndef vtkHyperStreamline_h
49 #define vtkHyperStreamline_h
51 #include "vtkFiltersGeneralModule.h"
54 #define VTK_INTEGRATE_FORWARD 0
55 #define VTK_INTEGRATE_BACKWARD 1
56 #define VTK_INTEGRATE_BOTH_DIRECTIONS 2
58 #define VTK_INTEGRATE_MAJOR_EIGENVECTOR 0
59 #define VTK_INTEGRATE_MEDIUM_EIGENVECTOR 1
60 #define VTK_INTEGRATE_MINOR_EIGENVECTOR 2
83 void SetStartLocation(
vtkIdType cellId,
int subId,
double pcoords[3]);
89 void SetStartLocation(
vtkIdType cellId,
int subId,
double r,
double s,
96 vtkIdType GetStartLocation(
int& subId,
double pcoords[3]);
103 void SetStartPosition(
double x[3]);
110 void SetStartPosition(
double x,
double y,
double z);
122 vtkSetClampMacro(MaximumPropagationDistance,
double,0.0,
VTK_DOUBLE_MAX);
123 vtkGetMacro(MaximumPropagationDistance,
double);
137 vtkSetClampMacro(IntegrationEigenvector,
int,
140 vtkGetMacro(IntegrationEigenvector,
int);
141 void SetIntegrationEigenvectorToMajor()
155 {this->SetIntegrationEigenvectorToMajor();};
164 {this->SetIntegrationEigenvectorToMedium();};
172 {this->SetIntegrationEigenvectorToMinor();};
179 vtkSetClampMacro(IntegrationStepLength,
double,0.001,0.5);
180 vtkGetMacro(IntegrationStepLength,
double);
189 vtkSetClampMacro(StepLength,
double,0.000001,1.0);
190 vtkGetMacro(StepLength,
double);
197 vtkSetClampMacro(IntegrationDirection,
int,
199 vtkGetMacro(IntegrationDirection,
int);
214 vtkGetMacro(TerminalEigenvalue,
double);
223 vtkGetMacro(NumberOfSides,
int);
234 vtkGetMacro(Radius,
double);
263 double StartPCoords[3];
266 double StartPosition[3];
generate hyperstreamline in arbitrary dataset
vtkHyperArray * Streamers
#define VTK_INTEGRATE_MAJOR_EIGENVECTOR
#define VTK_INTEGRATE_FORWARD
void SetIntegrationEigenvectorToMedium()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
#define VTK_INTEGRATE_BACKWARD
double IntegrationStepLength
void SetIntegrationDirectionToForward()
#define VTK_SIZEHINT(...)
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
void SetIntegrationDirectionToBackward()
#define VTK_INTEGRATE_MEDIUM_EIGENVECTOR
a simple class to control print indentation
void IntegrateMediumEigenvector()
Use the medium eigenvector field as the vector field through which to integrate.
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
void SetIntegrationDirectionToIntegrateBothDirections()
abstract class to specify dataset behavior
void IntegrateMajorEigenvector()
Use the major eigenvector field as the vector field through which to integrate.
double TerminalEigenvalue
#define VTK_INTEGRATE_BOTH_DIRECTIONS
concrete dataset represents vertices, lines, polygons, and triangle strips
int IntegrationEigenvector
#define VTK_INTEGRATE_MINOR_EIGENVECTOR
void IntegrateMinorEigenvector()
Use the minor eigenvector field as the vector field through which to integrate.
double MaximumPropagationDistance
static vtkPolyDataAlgorithm * New()
void SetIntegrationEigenvectorToMinor()
Superclass for algorithms that produce only polydata as output.