VTK
vtkImplicitWindowFunction.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImplicitWindowFunction.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 =========================================================================*/
36 #ifndef vtkImplicitWindowFunction_h
37 #define vtkImplicitWindowFunction_h
38 
39 #include "vtkCommonDataModelModule.h" // For export macro
40 #include "vtkImplicitFunction.h"
41 
42 class VTKCOMMONDATAMODEL_EXPORT vtkImplicitWindowFunction : public vtkImplicitFunction
43 {
44 public:
46  void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
47 
52 
54 
57  double EvaluateFunction(double x[3]) VTK_OVERRIDE;
58  double EvaluateFunction(double x, double y, double z)
59  {return this->vtkImplicitFunction::EvaluateFunction(x, y, z); } ;
61 
65  void EvaluateGradient(double x[3], double n[3]) VTK_OVERRIDE;
66 
68 
72  vtkGetObjectMacro(ImplicitFunction,vtkImplicitFunction);
74 
76 
80  vtkSetVector2Macro(WindowRange,double);
81  vtkGetVectorMacro(WindowRange,double,2);
83 
85 
90  vtkSetVector2Macro(WindowValues,double);
91  vtkGetVectorMacro(WindowValues,double,2);
93 
97  vtkMTimeType GetMTime() VTK_OVERRIDE;
98 
100 
103  void Register(vtkObjectBase* o) VTK_OVERRIDE;
104  void UnRegister(vtkObjectBase* o) VTK_OVERRIDE;
106 
107 protected:
109  ~vtkImplicitWindowFunction() VTK_OVERRIDE;
110 
111  void ReportReferences(vtkGarbageCollector*) VTK_OVERRIDE;
112 
113  vtkImplicitFunction *ImplicitFunction;
114  double WindowRange[2];
115  double WindowValues[2];
116 
117 private:
118  vtkImplicitWindowFunction(const vtkImplicitWindowFunction&) VTK_DELETE_FUNCTION;
119  void operator=(const vtkImplicitWindowFunction&) VTK_DELETE_FUNCTION;
120 };
121 
122 #endif
123 
124 
Detect and break reference loops.
abstract interface for implicit functions
virtual double EvaluateFunction(double x[3])=0
Evaluate function at position x-y-z and return value.
implicit function maps another implicit function to lie within a specified range
double EvaluateFunction(double x[3]) override
Evaluate window function.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkImplicitWindowFunction * New()
Construct object with window range (0,1) and window values (0,1).
vtkMTimeType GetMTime() override
Override modified time retrieval because of object dependencies.
double EvaluateFunction(double x, double y, double z)
void EvaluateGradient(double x[3], double n[3]) override
Evaluate window function gradient.
virtual void SetImplicitFunction(vtkImplicitFunction *)
Specify an implicit function to operate on.
a simple class to control print indentation
Definition: vtkIndent.h:40
abstract base class for most VTK objects
Definition: vtkObjectBase.h:66
vtkTypeUInt64 vtkMTimeType
Definition: vtkType.h:248