47 #ifndef __vtkImageBSplineCoefficients_h
48 #define __vtkImageBSplineCoefficients_h
51 #include "vtkImagingCoreModule.h"
52 #include "vtkThreadedImageAlgorithm.h"
56 public vtkThreadedImageAlgorithm
62 void PrintSelf(ostream& os, vtkIndent indent);
68 vtkGetMacro(SplineDegree,
int);
79 vtkSetClampMacro(BorderMode,
int,
87 vtkGetMacro(BorderMode,
int);
88 const char *GetBorderModeAsString();
95 vtkSetClampMacro(OutputScalarType,
int, VTK_FLOAT, VTK_DOUBLE);
96 vtkGetMacro(OutputScalarType,
int);
98 this->SetOutputScalarType(VTK_FLOAT); }
100 this->SetOutputScalarType(VTK_DOUBLE); }
101 const char *GetOutputScalarTypeAsString();
110 vtkSetMacro(Bypass,
int);
111 vtkBooleanMacro(Bypass,
int);
112 vtkGetMacro(Bypass,
int);
119 int CheckBounds(
const double point[3]);
126 void Evaluate(
const double point[3],
double *value);
127 double Evaluate(
double x,
double y,
double z);
129 return this->Evaluate(point[0], point[1], point[2]); }
134 int SplitExtent(
int splitExt[6],
int startExt[6],
int num,
int total);
140 virtual void AllocateOutputData(
141 vtkImageData *out, vtkInformation *outInfo,
int *uExtent);
142 virtual vtkImageData *AllocateOutputData(
143 vtkDataObject *out, vtkInformation* outInfo);
145 virtual int RequestData(
146 vtkInformation*, vtkInformationVector**, vtkInformationVector*);
147 virtual int RequestInformation(
148 vtkInformation*, vtkInformationVector**, vtkInformationVector*);
149 virtual int RequestUpdateExtent(
150 vtkInformation*, vtkInformationVector**, vtkInformationVector*);
152 virtual void ThreadedExecute(vtkImageData *inData, vtkImageData *outData,
153 int outExt[6],
int threadId);
void SetOutputScalarTypeToFloat()
void SetBorderModeToRepeat()
double Evaluate(const double point[3])
convert image to b-spline knots
void SetBorderModeToClamp()
void SetOutputScalarTypeToDouble()
#define VTK_IMAGE_BORDER_REPEAT
#define VTK_IMAGE_BORDER_CLAMP
#define VTK_IMAGE_BSPLINE_DEGREE_MAX
void SetBorderModeToMirror()
#define VTK_IMAGE_BORDER_MIRROR