VTK
dox/Filtering/vtkImplicitHalo.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkImplicitHalo.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00031 #ifndef __vtkImplicitHalo_h
00032 #define __vtkImplicitHalo_h
00033 
00034 #include "vtkImplicitFunction.h"
00035 
00036 class VTK_FILTERING_EXPORT vtkImplicitHalo : public vtkImplicitFunction
00037 {
00038 public:
00040   static vtkImplicitHalo *New();
00041 
00042   vtkTypeMacro(vtkImplicitHalo,vtkImplicitFunction);
00043   void PrintSelf(ostream& os, vtkIndent indent);
00044   
00046 
00047   virtual double EvaluateFunction(double x[3]);
00048   virtual double EvaluateFunction(double x, double y, double z)
00049     {
00050       return this->vtkImplicitFunction::EvaluateFunction(x, y, z);
00051     }
00053 
00055   void EvaluateGradient(double x[3], double g[3]);
00056 
00058 
00059   vtkSetMacro(Radius,double);
00060   vtkGetMacro(Radius,double);
00062   
00064 
00065   vtkSetVector3Macro(Center,double);
00066   vtkGetVector3Macro(Center,double);
00068   
00070 
00071   vtkSetMacro(FadeOut,double);
00072   vtkGetMacro(FadeOut,double);
00074   
00075 protected:
00076   vtkImplicitHalo();
00077   virtual ~vtkImplicitHalo();
00078 
00079   double Radius;
00080   double Center[3];
00081   double FadeOut;
00082 
00083 private:
00084   vtkImplicitHalo(const vtkImplicitHalo&); // Not implemented.
00085   void operator=(const vtkImplicitHalo&); // Not implemented.
00086 };
00087 
00088 #endif