Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkImplicitDataSet.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkImplicitDataSet.h,v $
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 =========================================================================*/
00042 #ifndef __vtkImplicitDataSet_h
00043 #define __vtkImplicitDataSet_h
00044 
00045 #include "vtkImplicitFunction.h"
00046 
00047 class vtkDataSet;
00048 
00049 class VTK_FILTERING_EXPORT vtkImplicitDataSet : public vtkImplicitFunction
00050 {
00051 public:
00052   vtkTypeRevisionMacro(vtkImplicitDataSet,vtkImplicitFunction);
00053   void PrintSelf(ostream& os, vtkIndent indent);
00054 
00057   static vtkImplicitDataSet *New();
00058 
00060   unsigned long GetMTime();
00061 
00063 
00065   double EvaluateFunction(double x[3]);
00066   double EvaluateFunction(double x, double y, double z)
00067     {return this->vtkImplicitFunction::EvaluateFunction(x, y, z); } ;
00069 
00071   void EvaluateGradient(double x[3], double n[3]);
00072 
00074 
00075   virtual void SetDataSet(vtkDataSet*);
00076   vtkGetObjectMacro(DataSet,vtkDataSet);
00078 
00080 
00082   vtkSetMacro(OutValue,double);
00083   vtkGetMacro(OutValue,double);
00085 
00087 
00089   vtkSetVector3Macro(OutGradient,double);
00090   vtkGetVector3Macro(OutGradient,double);
00092 
00093 protected:
00094   vtkImplicitDataSet();
00095   ~vtkImplicitDataSet();
00096 
00097   virtual void ReportReferences(vtkGarbageCollector*);
00098 
00099   vtkDataSet *DataSet;
00100   double OutValue;
00101   double OutGradient[3];
00102 
00103   double *Weights; //used to compute interpolation weights
00104   int Size; //keeps track of length of weights array
00105 
00106 private:
00107   vtkImplicitDataSet(const vtkImplicitDataSet&);  // Not implemented.
00108   void operator=(const vtkImplicitDataSet&);  // Not implemented.
00109 };
00110 
00111 #endif
00112 
00113 

Generated on Mon Jan 21 23:07:19 2008 for VTK by  doxygen 1.4.3-20050530