69 #ifndef vtkGenericStreamTracer_h
70 #define vtkGenericStreamTracer_h
72 #include "vtkFiltersGenericModule.h"
106 vtkSetVector3Macro(StartPosition,
double);
107 vtkGetVector3Macro(StartPosition,
double);
166 void SetIntegratorType(
int type);
167 int GetIntegratorType();
169 {this->SetIntegratorType(RUNGE_KUTTA2);};
171 {this->SetIntegratorType(RUNGE_KUTTA4);};
173 {this->SetIntegratorType(RUNGE_KUTTA45);};
184 void SetMaximumPropagation(
int unit,
double max);
185 void SetMaximumPropagation(
double max);
186 void SetMaximumPropagationUnit(
int unit);
187 int GetMaximumPropagationUnit();
188 double GetMaximumPropagation();
190 {this->SetMaximumPropagationUnit(TIME_UNIT);};
192 {this->SetMaximumPropagationUnit(LENGTH_UNIT);};
194 {this->SetMaximumPropagationUnit(CELL_LENGTH_UNIT);};
206 void SetMinimumIntegrationStep(
int unit,
double step);
207 void SetMinimumIntegrationStepUnit(
int unit);
208 void SetMinimumIntegrationStep(
double step);
209 int GetMinimumIntegrationStepUnit();
210 double GetMinimumIntegrationStep();
212 {this->SetMinimumIntegrationStepUnit(TIME_UNIT);};
214 {this->SetMinimumIntegrationStepUnit(LENGTH_UNIT);};
216 {this->SetMinimumIntegrationStepUnit(CELL_LENGTH_UNIT);};
228 void SetMaximumIntegrationStep(
int unit,
double step);
229 void SetMaximumIntegrationStepUnit(
int unit);
230 void SetMaximumIntegrationStep(
double step);
231 int GetMaximumIntegrationStepUnit();
232 double GetMaximumIntegrationStep();
234 {this->SetMaximumIntegrationStepUnit(TIME_UNIT);};
236 {this->SetMaximumIntegrationStepUnit(LENGTH_UNIT);};
238 {this->SetMaximumIntegrationStepUnit(CELL_LENGTH_UNIT);};
251 void SetInitialIntegrationStep(
int unit,
double step);
252 void SetInitialIntegrationStepUnit(
int unit);
253 void SetInitialIntegrationStep(
double step);
254 int GetInitialIntegrationStepUnit();
255 double GetInitialIntegrationStep();
257 {this->SetInitialIntegrationStepUnit(TIME_UNIT);};
259 {this->SetInitialIntegrationStepUnit(LENGTH_UNIT);};
261 {this->SetInitialIntegrationStepUnit(CELL_LENGTH_UNIT);};
270 vtkSetMacro(MaximumError,
double);
271 vtkGetMacro(MaximumError,
double);
278 vtkSetMacro(MaximumNumberOfSteps,
vtkIdType);
279 vtkGetMacro(MaximumNumberOfSteps,
vtkIdType);
287 vtkSetMacro(TerminalSpeed,
double);
288 vtkGetMacro(TerminalSpeed,
double);
297 this->SetInitialIntegrationStepUnit(unit);
298 this->SetMinimumIntegrationStepUnit(unit);
299 this->SetMaximumIntegrationStepUnit(unit);
315 vtkSetClampMacro(IntegrationDirection,
int, FORWARD, BOTH);
316 vtkGetMacro(IntegrationDirection,
int);
318 {this->SetIntegrationDirection(FORWARD);};
320 {this->SetIntegrationDirection(BACKWARD);};
322 {this->SetIntegrationDirection(BOTH);};
341 vtkSetMacro(RotationScale,
double);
342 vtkGetMacro(RotationScale,
double);
351 vtkGetStringMacro(InputVectorsSelection);
353 {this->SetInputVectorsSelection(fieldName);}
373 { vtkErrorMacro( <<
"AddInput() must be called with a vtkGenericDataSet not a vtkDataObject."); };
387 double vorticity[3]);
396 void SimpleIntegrate(
double seed[3],
402 void GenerateNormals(
vtkPolyData* output,
double* firstNormal);
406 vtkSetStringMacro(InputVectorsSelection);
411 double StartPosition[3];
429 void SetIntervalInformation(
int unit,
double interval,
433 double cellLength,
double speed);
435 double cellLength,
double speed);
437 double cellLength,
double speed);
439 double cellLength,
double speed);
440 void ConvertIntervals(
double& step,
double& minStep,
double& maxStep,