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

dox/Graphics/vtkHedgeHog.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkHedgeHog.h,v $ 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00030 #ifndef __vtkHedgeHog_h 00031 #define __vtkHedgeHog_h 00032 00033 #include "vtkDataSetToPolyDataFilter.h" 00034 00035 #define VTK_USE_VECTOR 0 00036 #define VTK_USE_NORMAL 1 00037 00038 class VTK_GRAPHICS_EXPORT vtkHedgeHog : public vtkDataSetToPolyDataFilter 00039 { 00040 public: 00041 static vtkHedgeHog *New(); 00042 vtkTypeRevisionMacro(vtkHedgeHog,vtkDataSetToPolyDataFilter); 00043 void PrintSelf(ostream& os, vtkIndent indent); 00044 00046 00047 vtkSetMacro(ScaleFactor,double); 00048 vtkGetMacro(ScaleFactor,double); 00050 00052 00053 vtkSetMacro(VectorMode,int); 00054 vtkGetMacro(VectorMode,int); 00055 void SetVectorModeToUseVector() {this->SetVectorMode(VTK_USE_VECTOR);}; 00056 void SetVectorModeToUseNormal() {this->SetVectorMode(VTK_USE_NORMAL);}; 00057 const char *GetVectorModeAsString(); 00059 00060 protected: 00061 vtkHedgeHog(); 00062 ~vtkHedgeHog() {}; 00063 00064 void Execute(); 00065 double ScaleFactor; 00066 int VectorMode; // Orient/scale via normal or via vector data 00067 00068 private: 00069 vtkHedgeHog(const vtkHedgeHog&); // Not implemented. 00070 void operator=(const vtkHedgeHog&); // Not implemented. 00071 }; 00072 00074 inline const char *vtkHedgeHog::GetVectorModeAsString(void) 00075 { 00076 if ( this->VectorMode == VTK_USE_VECTOR) 00077 { 00078 return "UseVector"; 00079 } 00080 else if ( this->VectorMode == VTK_USE_NORMAL) 00081 { 00082 return "UseNormal"; 00083 } 00084 else 00085 { 00086 return "Unknown"; 00087 } 00088 } 00089 #endif 00090 00091