00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00043
#ifndef __vtkThresholdTextureCoords_h
00044
#define __vtkThresholdTextureCoords_h
00045
00046
#include "vtkDataSetToDataSetFilter.h"
00047
00048 class VTK_GRAPHICS_EXPORT vtkThresholdTextureCoords :
public vtkDataSetToDataSetFilter
00049 {
00050
public:
00051
static vtkThresholdTextureCoords *
New();
00052 vtkTypeRevisionMacro(vtkThresholdTextureCoords,
vtkDataSetToDataSetFilter);
00053
void PrintSelf(ostream& os,
vtkIndent indent);
00054
00056
void ThresholdByLower(
double lower);
00057
00059
void ThresholdByUpper(
double upper);
00060
00063
void ThresholdBetween(
double lower,
double upper);
00064
00066
00067 vtkGetMacro(UpperThreshold,
double);
00068 vtkGetMacro(LowerThreshold,
double);
00070
00072
00073 vtkSetClampMacro(TextureDimension,
int,1,3);
00074 vtkGetMacro(TextureDimension,
int);
00076
00078
00080 vtkSetVector3Macro(InTextureCoord,
double);
00081 vtkGetVectorMacro(InTextureCoord,
double,3);
00083
00085
00087 vtkSetVector3Macro(OutTextureCoord,
double);
00088 vtkGetVectorMacro(OutTextureCoord,
double,3);
00090
00091
protected:
00092 vtkThresholdTextureCoords();
00093 ~vtkThresholdTextureCoords() {};
00094
00095
00096
void Execute();
00097
00098 double LowerThreshold;
00099 double UpperThreshold;
00100
00101 int TextureDimension;
00102
00103 double InTextureCoord[3];
00104 double OutTextureCoord[3];
00105
00106
00107 int (vtkThresholdTextureCoords::*ThresholdFunction)(
double s);
00108
00109
00110 int Lower(
double s) {
return ( s <= this->LowerThreshold ? 1 : 0 );};
00111 int Upper(
double s) {
return ( s >= this->UpperThreshold ? 1 : 0 );};
00112 int Between(
double s) {
return ( s >= this->LowerThreshold ?
00113 ( s <= this->UpperThreshold ? 1 : 0 ) : 0 );};
00114
private:
00115 vtkThresholdTextureCoords(
const vtkThresholdTextureCoords&);
00116
void operator=(
const vtkThresholdTextureCoords&);
00117 };
00118
00119
#endif