VTK  9.3.1
vtkSphericalTransform.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
23 #ifndef vtkSphericalTransform_h
24 #define vtkSphericalTransform_h
25 
26 #include "vtkCommonTransformsModule.h" // For export macro
27 #include "vtkWarpTransform.h"
28 
29 VTK_ABI_NAMESPACE_BEGIN
30 class VTKCOMMONTRANSFORMS_EXPORT vtkSphericalTransform : public vtkWarpTransform
31 {
32 public:
33  static vtkSphericalTransform* New();
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
41 
42 protected:
44  ~vtkSphericalTransform() override;
45 
49  void InternalDeepCopy(vtkAbstractTransform* transform) override;
50 
52 
55  void ForwardTransformPoint(const float in[3], float out[3]) override;
56  void ForwardTransformPoint(const double in[3], double out[3]) override;
58 
59  void ForwardTransformDerivative(const float in[3], float out[3], float derivative[3][3]) override;
61  const double in[3], double out[3], double derivative[3][3]) override;
62 
63  void InverseTransformPoint(const float in[3], float out[3]) override;
64  void InverseTransformPoint(const double in[3], double out[3]) override;
65 
66  void InverseTransformDerivative(const float in[3], float out[3], float derivative[3][3]) override;
68  const double in[3], double out[3], double derivative[3][3]) override;
69 
70 private:
72  void operator=(const vtkSphericalTransform&) = delete;
73 };
74 
75 VTK_ABI_NAMESPACE_END
76 #endif
virtual void ForwardTransformPoint(const float in[3], float out[3])=0
If the InverseFlag is set to 0, then a call to InternalTransformPoint results in a call to ForwardTra...
virtual void InverseTransformPoint(const float in[3], float out[3])
If the InverseFlag is set to 1, then a call to InternalTransformPoint results in a call to InverseTra...
virtual void InverseTransformDerivative(const float in[3], float out[3], float derivative[3][3])
Calculate the inverse transform as well as the derivative of the forward transform (that's correct: t...
virtual vtkAbstractTransform * MakeTransform()=0
Make another transform of the same type.
virtual void ForwardTransformDerivative(const float in[3], float out[3], float derivative[3][3])=0
Calculate the forward transform as well as the derivative.
virtual void InternalDeepCopy(vtkAbstractTransform *)
Perform any subclass-specific DeepCopy.
a simple class to control print indentation
Definition: vtkIndent.h:28
spherical to rectangular coords and back
superclass for all geometric transformations
superclass for nonlinear geometric transformations
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.