VTK
dox/Common/ComputationalGeometry/vtkParametricTorus.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkParametricTorus.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 =========================================================================*/
00033 #ifndef __vtkParametricTorus_h
00034 #define __vtkParametricTorus_h
00035 
00036 #include "vtkCommonComputationalGeometryModule.h" // For export macro
00037 #include "vtkParametricFunction.h"
00038 
00039 class VTKCOMMONCOMPUTATIONALGEOMETRY_EXPORT vtkParametricTorus : public vtkParametricFunction
00040 {
00041 
00042 public:
00043   vtkTypeMacro(vtkParametricTorus,vtkParametricFunction);
00044   void PrintSelf(ostream& os, vtkIndent indent);
00045 
00050   static vtkParametricTorus *New();
00051 
00053 
00055   vtkSetMacro(RingRadius,double);
00056   vtkGetMacro(RingRadius,double);
00058 
00060 
00062   vtkSetMacro(CrossSectionRadius,double);
00063   vtkGetMacro(CrossSectionRadius,double);
00065 
00067   virtual int GetDimension() {return 2;}
00068 
00073   virtual void Evaluate(double uvw[3], double Pt[3], double Duvw[9]);
00074 
00083   virtual double EvaluateScalar(double uvw[3], double Pt[3], double Duvw[9]);
00084 
00085 protected:
00086   vtkParametricTorus();
00087   ~vtkParametricTorus();
00088 
00089   // Variables
00090   double RingRadius;
00091   double CrossSectionRadius;
00092 
00093 private:
00094   vtkParametricTorus(const vtkParametricTorus&);  // Not implemented.
00095   void operator=(const vtkParametricTorus&);  // Not implemented.
00096 };
00097 
00098 #endif