VTK
vtkContourLoopExtraction.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkContourLoopExtraction.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 =========================================================================*/
62 #ifndef vtkContourLoopExtraction_h
63 #define vtkContourLoopExtraction_h
64 
65 #include "vtkFiltersModelingModule.h" // For export macro
66 #include "vtkPolyDataAlgorithm.h"
67 
68 #define VTK_LOOP_CLOSURE_OFF 0
69 #define VTK_LOOP_CLOSURE_BOUNDARY 1
70 #define VTK_LOOP_CLOSURE_ALL 2
71 
72 class VTKFILTERSMODELING_EXPORT vtkContourLoopExtraction : public vtkPolyDataAlgorithm
73 {
74 public:
76 
79  static vtkContourLoopExtraction *New();
81  void PrintSelf(ostream& os, vtkIndent indent) override;
83 
85 
90  vtkSetClampMacro(LoopClosure,int,VTK_LOOP_CLOSURE_OFF,VTK_LOOP_CLOSURE_ALL);
91  vtkGetMacro(LoopClosure,int);
93  {this->SetLoopClosure(VTK_LOOP_CLOSURE_OFF);};
95  {this->SetLoopClosure(VTK_LOOP_CLOSURE_BOUNDARY);};
97  {this->SetLoopClosure(VTK_LOOP_CLOSURE_ALL);};
98  const char *GetLoopClosureAsString();
100 
102 
107  vtkSetMacro(ScalarThresholding,bool);
108  vtkGetMacro(ScalarThresholding,bool);
109  vtkBooleanMacro(ScalarThresholding,bool);
111 
113 
118  vtkSetVector2Macro(ScalarRange,double);
119  vtkGetVector2Macro(ScalarRange,double);
121 
123 
127  vtkSetVector3Macro(Normal,double);
128  vtkGetVector3Macro(Normal,double);
130 
131 protected:
133  ~vtkContourLoopExtraction() override;
134 
137  double ScalarRange[2];
138  double Normal[3];
139 
141  vtkInformationVector *) override;
142 
143 private:
145  void operator=(const vtkContourLoopExtraction&) = delete;
146 };
147 
148 
149 #endif
#define VTK_LOOP_CLOSURE_ALL
Store vtkAlgorithm input/output information.
void SetLoopClosureToOff()
Specify whether to close loops or not.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
#define VTK_LOOP_CLOSURE_BOUNDARY
static vtkPolyDataAlgorithm * New()
Superclass for algorithms that produce only polydata as output.
a simple class to control print indentation
Definition: vtkIndent.h:39
#define VTK_LOOP_CLOSURE_OFF
void SetLoopClosureToBoundary()
Specify whether to close loops or not.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
Store zero or more vtkInformation instances.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
void SetLoopClosureToAll()
Specify whether to close loops or not.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
extract closed loops (polygons) from lines