VTK  9.1.0
vtkParametricMobius.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkParametricMobius.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 =========================================================================*/
100 #ifndef vtkParametricMobius_h
101 #define vtkParametricMobius_h
102 
103 #include "vtkCommonComputationalGeometryModule.h" // For export macro
104 #include "vtkParametricFunction.h"
105 
106 class VTKCOMMONCOMPUTATIONALGEOMETRY_EXPORT vtkParametricMobius : public vtkParametricFunction
107 {
108 public:
110  void PrintSelf(ostream& os, vtkIndent indent) override;
111 
123 
125 
128  vtkSetMacro(Radius, double);
129  vtkGetMacro(Radius, double);
131 
135  int GetDimension() override { return 2; }
136 
145  void Evaluate(double uvw[3], double Pt[3], double Duvw[9]) override;
146 
160  double EvaluateScalar(double uvw[3], double Pt[3], double Duvw[9]) override;
161 
162 protected:
165 
166  // Variables
167  double Radius;
168 
169 private:
170  vtkParametricMobius(const vtkParametricMobius&) = delete;
171  void operator=(const vtkParametricMobius&) = delete;
172 };
173 
174 #endif
a simple class to control print indentation
Definition: vtkIndent.h:113
abstract interface for parametric functions
Generate a Mobius strip.
double EvaluateScalar(double uvw[3], double Pt[3], double Duvw[9]) override
Calculate a user defined scalar using one or all of uvw, Pt, Duvw.
~vtkParametricMobius() override
void Evaluate(double uvw[3], double Pt[3], double Duvw[9]) override
The Mobius strip.
int GetDimension() override
Return the parametric dimension of the class.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkParametricMobius * New()
Construct a Mobius strip with the following parameters: MinimumU = 0, MaximumU = 2*Pi,...