VTK
vtkmCoordinateSystemTransform.h
Go to the documentation of this file.
1 //=============================================================================
2 //
3 // Copyright (c) Kitware, Inc.
4 // All rights reserved.
5 // See LICENSE.txt for details.
6 //
7 // This software is distributed WITHOUT ANY WARRANTY; without even
8 // the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
9 // PURPOSE. See the above copyright notice for more information.
10 //
11 // Copyright 2012 Sandia Corporation.
12 // Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
13 // the U.S. Government retains certain rights in this software.
14 //
15 //=============================================================================
25 #ifndef vtkmCoordinateSystemTransform_h
26 #define vtkmCoordinateSystemTransform_h
27 
28 #include "vtkPointSetAlgorithm.h"
29 #include "vtkAcceleratorsVTKmModule.h" // required for correct export
30 
31 class VTKACCELERATORSVTKM_EXPORT vtkmCoordinateSystemTransform : public vtkPointSetAlgorithm
32 {
33  enum struct TransformTypes {None, CarToCyl, CylToCar, CarToSph, SphToCar};
34 public:
36  void PrintSelf(ostream& os, vtkIndent indent) override;
37 
39 
40  void SetCartesianToCylindrical();
41  void SetCylindricalToCartesian();
42 
43  void SetCartesianToSpherical();
44  void SetSphericalToCartesian();
45 
47 protected:
50 
51  int RequestDataObject(vtkInformation* request,
52  vtkInformationVector** inputVector,
53  vtkInformationVector* outputVector) override;
55  vtkInformationVector*) override;
56 
57 private:
59  void operator=(const vtkmCoordinateSystemTransform&) = delete;
60 
61  TransformTypes TransformType;
62 };
63 
64 #endif // vtkmCoordinateSystemTransform_h
65 
66 // VTK-HeaderTest-Exclude: vtkmCoordinateSystemTransform.h
vtkPointSetAlgorithm
Superclass for algorithms that produce output of the same type as input.
Definition: vtkPointSetAlgorithm.h:43
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:41
vtkPointSetAlgorithm.h
vtkmCoordinateSystemTransform
transform a coordinate system between Cartesian&Cylindrical and Cartesian&Spherical
Definition: vtkmCoordinateSystemTransform.h:31
vtkX3D::port
Definition: vtkX3D.h:447
vtkPointSetAlgorithm::RequestData
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
This is called by the superclass.
Definition: vtkPointSetAlgorithm.h:132
vtkPointSetAlgorithm::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:86
vtkPointSetAlgorithm::FillInputPortInformation
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
vtkX3D::info
Definition: vtkX3D.h:376
vtkPointSetAlgorithm::New
static vtkPointSetAlgorithm * New()
vtkPointSetAlgorithm::RequestDataObject
virtual int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.