Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

dox/Graphics/vtkProgrammableGlyphFilter.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkProgrammableGlyphFilter.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00067 #ifndef __vtkProgrammableGlyphFilter_h 00068 #define __vtkProgrammableGlyphFilter_h 00069 00070 #define VTK_COLOR_BY_INPUT 0 00071 #define VTK_COLOR_BY_SOURCE 1 00072 00073 #include "vtkDataSetToPolyDataFilter.h" 00074 00075 class vtkPointData; 00076 00077 class VTK_GRAPHICS_EXPORT vtkProgrammableGlyphFilter : public vtkDataSetToPolyDataFilter 00078 { 00079 public: 00080 vtkTypeRevisionMacro(vtkProgrammableGlyphFilter,vtkDataSetToPolyDataFilter); 00081 void PrintSelf(ostream& os, vtkIndent indent); 00082 00085 static vtkProgrammableGlyphFilter *New(); 00086 00088 00090 void SetSource(vtkPolyData *source); 00091 vtkPolyData *GetSource(); 00093 00095 void SetGlyphMethod(void (*f)(void *), void *arg); 00096 00099 void SetGlyphMethodArgDelete(void (*f)(void *)); 00100 00102 00105 vtkGetMacro(PointId, vtkIdType); 00107 00109 00112 vtkGetVector3Macro(Point,float); 00114 00116 00119 vtkGetObjectMacro(PointData,vtkPointData); 00121 00123 00124 vtkSetMacro(ColorMode,int); 00125 vtkGetMacro(ColorMode,int); 00126 void SetColorModeToColorByInput() 00127 {this->SetColorMode(VTK_COLOR_BY_INPUT);}; 00128 void SetColorModeToColorBySource() 00129 {this->SetColorMode(VTK_COLOR_BY_SOURCE);}; 00130 const char *GetColorModeAsString(); 00132 00133 protected: 00134 vtkProgrammableGlyphFilter(); 00135 ~vtkProgrammableGlyphFilter(); 00136 00137 void Execute(); 00138 00139 float Point[3]; // Coordinates of point 00140 vtkIdType PointId; // Current point id during processing 00141 vtkPointData *PointData; 00142 int ColorMode; 00143 00144 void (*GlyphMethod)(void *); // Support GlyphMethod 00145 void (*GlyphMethodArgDelete)(void *); 00146 void *GlyphMethodArg; 00147 00148 private: 00149 vtkProgrammableGlyphFilter(const vtkProgrammableGlyphFilter&); // Not implemented. 00150 void operator=(const vtkProgrammableGlyphFilter&); // Not implemented. 00151 }; 00152 00153 #endif