00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00058 #ifndef __vtkImageCast_h
00059 #define __vtkImageCast_h
00060
00061
00062 #include "vtkImageToImageFilter.h"
00063
00064 class VTK_EXPORT vtkImageCast : public vtkImageToImageFilter
00065 {
00066 public:
00067 static vtkImageCast *New();
00068 vtkTypeMacro(vtkImageCast,vtkImageToImageFilter);
00069 void PrintSelf(ostream& os, vtkIndent indent);
00070
00072 vtkSetMacro(OutputScalarType,int);
00073 vtkGetMacro(OutputScalarType,int);
00074 void SetOutputScalarTypeToFloat(){this->SetOutputScalarType(VTK_FLOAT);};
00075 void SetOutputScalarTypeToDouble(){this->SetOutputScalarType(VTK_DOUBLE);};
00076 void SetOutputScalarTypeToInt(){this->SetOutputScalarType(VTK_INT);};
00077 void SetOutputScalarTypeToUnsignedInt()
00078 {this->SetOutputScalarType(VTK_UNSIGNED_INT);};
00079 void SetOutputScalarTypeToLong(){this->SetOutputScalarType(VTK_LONG);};
00080 void SetOutputScalarTypeToUnsignedLong()
00081 {this->SetOutputScalarType(VTK_UNSIGNED_LONG);};
00082 void SetOutputScalarTypeToShort(){this->SetOutputScalarType(VTK_SHORT);};
00083 void SetOutputScalarTypeToUnsignedShort()
00084 {this->SetOutputScalarType(VTK_UNSIGNED_SHORT);};
00085 void SetOutputScalarTypeToUnsignedChar()
00086 {this->SetOutputScalarType(VTK_UNSIGNED_CHAR);};
00087 void SetOutputScalarTypeToChar()
00088 {this->SetOutputScalarType(VTK_CHAR);};
00089
00093 vtkSetMacro(ClampOverflow, int);
00094 vtkGetMacro(ClampOverflow, int);
00095 vtkBooleanMacro(ClampOverflow, int);
00096
00097
00098 protected:
00099 vtkImageCast();
00100 ~vtkImageCast() {};
00101 vtkImageCast(const vtkImageCast&) {};
00102 void operator=(const vtkImageCast&) {};
00103
00104 int ClampOverflow;
00105 int OutputScalarType;
00106 void ExecuteInformation(vtkImageData *inData, vtkImageData *outData);
00107 void UpdateData(vtkDataObject *data);
00108 void ExecuteInformation(){this->vtkImageToImageFilter::ExecuteInformation();};
00109 void ThreadedExecute(vtkImageData *inData, vtkImageData *outData,
00110 int ext[6], int id);
00111
00112 };
00113
00114 #endif
00115
00116
00117
00118