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

Common/vtkCylindricalTransform.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkCylindricalTransform.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 =========================================================================*/
00033 #ifndef __vtkCylindricalTransform_h
00034 #define __vtkCylindricalTransform_h
00035 
00036 #include "vtkWarpTransform.h"
00037 
00038 class VTK_COMMON_EXPORT vtkCylindricalTransform : public vtkWarpTransform
00039 {
00040 public:
00041   static vtkCylindricalTransform *New();
00042   vtkTypeRevisionMacro(vtkCylindricalTransform,vtkWarpTransform);
00043   virtual void PrintSelf(ostream& os, vtkIndent indent);
00044 
00046   vtkAbstractTransform *MakeTransform();
00047 
00048 protected:
00049   vtkCylindricalTransform();
00050   ~vtkCylindricalTransform();
00051 
00053   void InternalDeepCopy(vtkAbstractTransform *transform);
00054 
00056 
00057   void ForwardTransformPoint(const float in[3], float out[3]);
00058   void ForwardTransformPoint(const double in[3], double out[3]);
00060 
00061   void ForwardTransformDerivative(const float in[3], float out[3],
00062                                   float derivative[3][3]);
00063   void ForwardTransformDerivative(const double in[3], double out[3],
00064                                   double derivative[3][3]);
00065 
00066   void InverseTransformPoint(const float in[3], float out[3]);
00067   void InverseTransformPoint(const double in[3], double out[3]);
00068 
00069   void InverseTransformDerivative(const float in[3], float out[3],
00070                                   float derivative[3][3]);
00071   void InverseTransformDerivative(const double in[3], double out[3],
00072                                   double derivative[3][3]);
00073 
00074 private:
00075   vtkCylindricalTransform(const vtkCylindricalTransform&); // Not implemented.
00076   void operator=(const vtkCylindricalTransform&); // Not implemented.
00077 };
00078 
00079 #endif
00080