Graphics/vtkProgrammableGlyphFilter.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00063 #ifndef __vtkProgrammableGlyphFilter_h
00064 #define __vtkProgrammableGlyphFilter_h
00065
00066 #define VTK_COLOR_BY_INPUT 0
00067 #define VTK_COLOR_BY_SOURCE 1
00068
00069 #include "vtkDataSetToPolyDataFilter.h"
00070
00071 class vtkPointData;
00072
00073 class VTK_GRAPHICS_EXPORT vtkProgrammableGlyphFilter : public vtkDataSetToPolyDataFilter
00074 {
00075 public:
00076 vtkTypeRevisionMacro(vtkProgrammableGlyphFilter,vtkDataSetToPolyDataFilter);
00077 void PrintSelf(ostream& os, vtkIndent indent);
00078
00081 static vtkProgrammableGlyphFilter *New();
00082
00084
00086 void SetSource(vtkPolyData *source);
00087 vtkPolyData *GetSource();
00089
00091 void SetGlyphMethod(void (*f)(void *), void *arg);
00092
00095 void SetGlyphMethodArgDelete(void (*f)(void *));
00096
00098
00101 vtkGetMacro(PointId, vtkIdType);
00103
00105
00108 vtkGetVector3Macro(Point,double);
00110
00112
00115 vtkGetObjectMacro(PointData,vtkPointData);
00117
00119
00120 vtkSetMacro(ColorMode,int);
00121 vtkGetMacro(ColorMode,int);
00122 void SetColorModeToColorByInput()
00123 {this->SetColorMode(VTK_COLOR_BY_INPUT);};
00124 void SetColorModeToColorBySource()
00125 {this->SetColorMode(VTK_COLOR_BY_SOURCE);};
00126 const char *GetColorModeAsString();
00128
00129 protected:
00130 vtkProgrammableGlyphFilter();
00131 ~vtkProgrammableGlyphFilter();
00132
00133 void Execute();
00134
00135 double Point[3];
00136 vtkIdType PointId;
00137 vtkPointData *PointData;
00138 int ColorMode;
00139
00140 void (*GlyphMethod)(void *);
00141 void (*GlyphMethodArgDelete)(void *);
00142 void *GlyphMethodArg;
00143
00144 private:
00145 vtkProgrammableGlyphFilter(const vtkProgrammableGlyphFilter&);
00146 void operator=(const vtkProgrammableGlyphFilter&);
00147 };
00148
00149 #endif