VTK
vtkHedgeHog.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkHedgeHog.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
30 #ifndef vtkHedgeHog_h
31 #define vtkHedgeHog_h
32 
33 #include "vtkFiltersCoreModule.h" // For export macro
34 #include "vtkPolyDataAlgorithm.h"
35 
36 #define VTK_USE_VECTOR 0
37 #define VTK_USE_NORMAL 1
38 
40 {
41 public:
42  static vtkHedgeHog *New();
44  void PrintSelf(ostream& os, vtkIndent indent);
45 
47 
48  vtkSetMacro(ScaleFactor,double);
49  vtkGetMacro(ScaleFactor,double);
51 
53 
54  vtkSetMacro(VectorMode,int);
55  vtkGetMacro(VectorMode,int);
56  void SetVectorModeToUseVector() {this->SetVectorMode(VTK_USE_VECTOR);};
57  void SetVectorModeToUseNormal() {this->SetVectorMode(VTK_USE_NORMAL);};
58  const char *GetVectorModeAsString();
60 
62 
65  vtkSetMacro(OutputPointsPrecision,int);
66  vtkGetMacro(OutputPointsPrecision,int);
68 
69 protected:
70  vtkHedgeHog();
72 
75  double ScaleFactor;
76  int VectorMode; // Orient/scale via normal or via vector data
78 
79 private:
80  vtkHedgeHog(const vtkHedgeHog&); // Not implemented.
81  void operator=(const vtkHedgeHog&); // Not implemented.
82 };
83 
85 
86 inline const char *vtkHedgeHog::GetVectorModeAsString(void)
87 {
88  if ( this->VectorMode == VTK_USE_VECTOR)
89  {
90  return "UseVector";
91  }
92  else if ( this->VectorMode == VTK_USE_NORMAL)
93  {
94  return "UseNormal";
95  }
96  else
97  {
98  return "Unknown";
99  }
100 }
101 #endif
102 
void SetVectorModeToUseNormal()
Definition: vtkHedgeHog.h:57
virtual int FillInputPortInformation(int port, vtkInformation *info)
Store vtkAlgorithm input/output information.
create oriented lines from vector data
Definition: vtkHedgeHog.h:39
const char * GetVectorModeAsString()
Definition: vtkHedgeHog.h:86
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
#define VTKFILTERSCORE_EXPORT
static vtkPolyDataAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent)
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:38
int VectorMode
Definition: vtkHedgeHog.h:76
#define VTK_USE_VECTOR
Definition: vtkHedgeHog.h:36
double ScaleFactor
Definition: vtkHedgeHog.h:75
Store zero or more vtkInformation instances.
int OutputPointsPrecision
Definition: vtkHedgeHog.h:77
void SetVectorModeToUseVector()
Definition: vtkHedgeHog.h:56
#define VTK_USE_NORMAL
Definition: vtkHedgeHog.h:37