42 #ifndef __vtkPiecewiseFunction_h
43 #define __vtkPiecewiseFunction_h
45 #include "vtkDataObject.h"
47 class vtkPiecewiseFunctionInternals;
54 void PrintSelf(ostream& os,
vtkIndent indent);
69 int AddPoint(
double x,
double y );
70 int AddPoint(
double x,
double y,
double midpoint,
double sharpness );
71 int RemovePoint(
double x );
75 void RemoveAllPoints();
81 void AddSegment(
double x1,
double y1,
double x2,
double y2 );
85 double GetValue(
double x );
90 int GetNodeValue(
int index,
double val[4] );
91 int SetNodeValue(
int index,
double val[4] );
100 double *GetDataPointer();
101 void FillFromDataPointer(
int,
double*);
106 vtkGetVector2Macro( Range,
double );
111 int AdjustRange(
double range[2]);
116 void GetTable(
double x1,
double x2,
int size,
float *table,
int stride=1 );
117 void GetTable(
double x1,
double x2,
int size,
double *table,
int stride=1 );
125 void BuildFunctionFromTable(
double x1,
double x2,
int size,
126 double *table,
int stride=1 );
136 vtkSetMacro( Clamping,
int );
137 vtkGetMacro( Clamping,
int );
138 vtkBooleanMacro( Clamping,
int );
146 const char *GetType();
150 double GetFirstNonZeroValue();
168 vtkSetMacro(AllowDuplicateScalars,
int);
169 vtkGetMacro(AllowDuplicateScalars,
int);
170 vtkBooleanMacro(AllowDuplicateScalars,
int);
194 void SortAndUpdateRange();
#define VTK_PIECEWISE_FUNCTION
Defines a 1D piecewise function.
a simple class to control print indentation
helper class to get VTK data object types as string and instantiate them
vtkPiecewiseFunctionInternals * Internal
int AllowDuplicateScalars