00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00043
#ifndef __vtkWarpScalar_h
00044
#define __vtkWarpScalar_h
00045
00046
#include "vtkPointSetToPointSetFilter.h"
00047
00048
class vtkDataArray;
00049
00050 class VTK_GRAPHICS_EXPORT vtkWarpScalar :
public vtkPointSetToPointSetFilter
00051 {
00052
public:
00053
static vtkWarpScalar *
New();
00054 vtkTypeRevisionMacro(vtkWarpScalar,
vtkPointSetToPointSetFilter);
00055
void PrintSelf(ostream& os,
vtkIndent indent);
00056
00058
00059 vtkSetMacro(ScaleFactor,
double);
00060 vtkGetMacro(ScaleFactor,
double);
00062
00064
00066 vtkSetMacro(UseNormal,
int);
00067 vtkGetMacro(UseNormal,
int);
00068 vtkBooleanMacro(UseNormal,
int);
00070
00072
00074 vtkSetVector3Macro(Normal,
double);
00075 vtkGetVectorMacro(Normal,
double,3);
00077
00079
00083 vtkSetMacro(XYPlane,
int);
00084 vtkGetMacro(XYPlane,
int);
00085 vtkBooleanMacro(XYPlane,
int);
00087
00089
00092 vtkGetStringMacro(InputScalarsSelection);
00093 void SelectInputScalars(
const char *fieldName)
00094 {this->SetInputScalarsSelection(fieldName);}
00096
00097
protected:
00098 vtkWarpScalar();
00099 ~vtkWarpScalar();
00100
00101
void Execute();
00102
00103 double ScaleFactor;
00104 int UseNormal;
00105 double Normal[3];
00106 int XYPlane;
00107
00108
00109
double *(vtkWarpScalar::*PointNormal)(
vtkIdType id,
vtkDataArray *normals);
00110
double *DataNormal(
vtkIdType id,
vtkDataArray *normals=NULL);
00111
double *InstanceNormal(
vtkIdType id,
vtkDataArray *normals=NULL);
00112
double *ZNormal(
vtkIdType id,
vtkDataArray *normals=NULL);
00113
00114
00115 char *InputScalarsSelection;
00116 vtkSetStringMacro(InputScalarsSelection);
00117
00118
private:
00119 vtkWarpScalar(
const vtkWarpScalar&);
00120
void operator=(
const vtkWarpScalar&);
00121 };
00122
00123
#endif