VTK
vtkImplicitSum.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImplicitSum.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 =========================================================================*/
31 #ifndef vtkImplicitSum_h
32 #define vtkImplicitSum_h
33 
34 #include "vtkCommonDataModelModule.h" // For export macro
35 #include "vtkImplicitFunction.h"
36 
37 class vtkDoubleArray;
39 
41 {
42 public:
43  static vtkImplicitSum *New();
44 
46  void PrintSelf(ostream& os, vtkIndent indent);
47 
49 
50  double EvaluateFunction(double x[3]);
51  double EvaluateFunction(double x, double y, double z)
52  {return this->vtkImplicitFunction::EvaluateFunction(x, y, z); } ;
54 
57  void EvaluateGradient(double x[3], double g[3]);
58 
60  unsigned long GetMTime();
61 
65 
68  void AddFunction(vtkImplicitFunction *in) { this->AddFunction(in, 1.0); }
69 
72 
75 
77 
82  vtkSetMacro(NormalizeByWeight, int);
83  vtkGetMacro(NormalizeByWeight, int);
84  vtkBooleanMacro(NormalizeByWeight, int);
86 
87 protected:
90 
93  double TotalWeight;
94 
97 
98 private:
99  vtkImplicitSum(const vtkImplicitSum&); // Not implemented.
100  void operator=(const vtkImplicitSum&); // Not implemented.
101 };
102 
103 #endif
vtkgl::z
GLdouble GLdouble z
Definition: vtkgl.h:11754
vtkImplicitSum::EvaluateFunction
double EvaluateFunction(double x, double y, double z)
Definition: vtkImplicitSum.h:51
vtkImplicitSum::FunctionList
vtkImplicitFunctionCollection * FunctionList
Definition: vtkImplicitSum.h:91
vtkImplicitSum::EvaluateGradient
void EvaluateGradient(double x[3], double g[3])
vtkCommonDataModelModule.h
vtkImplicitSum::NormalizeByWeight
int NormalizeByWeight
Definition: vtkImplicitSum.h:96
vtkX3D::weight
@ weight
Definition: vtkX3D.h:532
vtkImplicitSum::TotalWeight
double TotalWeight
Definition: vtkImplicitSum.h:93
vtkImplicitFunction::EvaluateFunction
virtual double EvaluateFunction(double x[3])=0
vtkImplicitSum::~vtkImplicitSum
~vtkImplicitSum()
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkgl::x
GLint GLint GLint GLint GLint x
Definition: vtkgl.h:11318
vtkgl::in
GLuint in
Definition: vtkgl.h:16905
vtkImplicitSum::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkImplicitSum::Weights
vtkDoubleArray * Weights
Definition: vtkImplicitSum.h:92
vtkImplicitFunction
abstract interface for implicit functions
Definition: vtkImplicitFunction.h:58
vtkImplicitSum
implicit sum of other implicit functions
Definition: vtkImplicitSum.h:41
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkImplicitSum::SetFunctionWeight
void SetFunctionWeight(vtkImplicitFunction *f, double weight)
vtkImplicitSum::CalculateTotalWeight
void CalculateTotalWeight(void)
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkgl::f
GLclampf f
Definition: vtkgl.h:14181
vtkBooleanMacro
vtkBooleanMacro(IgnoreDriverBugs, bool)
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkImplicitSum::EvaluateFunction
double EvaluateFunction(double x[3])
vtkImplicitSum::AddFunction
void AddFunction(vtkImplicitFunction *in, double weight)
vtkgl::y
GLint GLint GLint GLint GLint GLint y
Definition: vtkgl.h:11318
vtkgl::g
GLboolean GLboolean g
Definition: vtkgl.h:12312
vtkImplicitFunction.h
vtkDoubleArray
dynamic, self-adjusting array of double
Definition: vtkDoubleArray.h:49
VTKCOMMONDATAMODEL_EXPORT
#define VTKCOMMONDATAMODEL_EXPORT
Definition: vtkCommonDataModelModule.h:15
vtkImplicitSum::AddFunction
void AddFunction(vtkImplicitFunction *in)
Definition: vtkImplicitSum.h:68
vtkImplicitSum::RemoveAllFunctions
void RemoveAllFunctions()
vtkImplicitSum::GetMTime
unsigned long GetMTime()
vtkImplicitSum::New
static vtkImplicitSum * New()
vtkImplicitFunctionCollection
maintain a list of implicit functions
Definition: vtkImplicitFunctionCollection.h:33
vtkImplicitSum::vtkImplicitSum
vtkImplicitSum()