VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
vtkClipPolyData.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkClipPolyData.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 =========================================================================*/
64 #ifndef __vtkClipPolyData_h
65 #define __vtkClipPolyData_h
66 
67 #include "vtkFiltersCoreModule.h" // For export macro
68 #include "vtkPolyDataAlgorithm.h"
69 
70 class vtkImplicitFunction;
71 class vtkIncrementalPointLocator;
72 
73 class VTKFILTERSCORE_EXPORT vtkClipPolyData : public vtkPolyDataAlgorithm
74 {
75 public:
76  vtkTypeMacro(vtkClipPolyData,vtkPolyDataAlgorithm);
77  void PrintSelf(ostream& os, vtkIndent indent);
78 
81  static vtkClipPolyData *New();
82 
84 
87  vtkSetMacro(Value,double);
88  vtkGetMacro(Value,double);
90 
92 
97  vtkSetMacro(InsideOut,int);
98  vtkGetMacro(InsideOut,int);
99  vtkBooleanMacro(InsideOut,int);
101 
103 
106  virtual void SetClipFunction(vtkImplicitFunction*);
107  vtkGetObjectMacro(ClipFunction,vtkImplicitFunction);
109 
111 
115  vtkSetMacro(GenerateClipScalars,int);
116  vtkGetMacro(GenerateClipScalars,int);
117  vtkBooleanMacro(GenerateClipScalars,int);
119 
121 
123  vtkSetMacro(GenerateClippedOutput,int);
124  vtkGetMacro(GenerateClippedOutput,int);
125  vtkBooleanMacro(GenerateClippedOutput,int);
127 
129  vtkPolyData *GetClippedOutput();
130 
132 
133  vtkAlgorithmOutput* GetClippedOutputPort()
134  {
135  return this->GetOutputPort(1);
136  }
138 
140 
142  void SetLocator(vtkIncrementalPointLocator *locator);
143  vtkGetObjectMacro(Locator,vtkIncrementalPointLocator);
145 
148  void CreateDefaultLocator();
149 
151  unsigned long GetMTime();
152 
153 protected:
154  vtkClipPolyData(vtkImplicitFunction *cf=NULL);
155  ~vtkClipPolyData();
156 
157  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
158  vtkImplicitFunction *ClipFunction;
159 
160  vtkIncrementalPointLocator *Locator;
162  double Value;
164 
166 private:
167  vtkClipPolyData(const vtkClipPolyData&); // Not implemented.
168  void operator=(const vtkClipPolyData&); // Not implemented.
169 };
170 
171 #endif
vtkIncrementalPointLocator * Locator
vtkAlgorithmOutput * GetClippedOutputPort()
vtkImplicitFunction * ClipFunction
clip polygonal data with user-specified implicit function or input scalar data