VTK  9.0.3
vtkTransformCoordinateSystems.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkTransformCoordinateSystems.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 =========================================================================*/
28 #ifndef vtkTransformCoordinateSystems_h
29 #define vtkTransformCoordinateSystems_h
30 
31 #include "vtkCoordinate.h" //to get the defines in vtkCoordinate
32 #include "vtkPointSetAlgorithm.h"
33 #include "vtkRenderingCoreModule.h" // For export macro
34 
35 class VTKRENDERINGCORE_EXPORT vtkTransformCoordinateSystems : public vtkPointSetAlgorithm
36 {
37 public:
39 
43  void PrintSelf(ostream& os, vtkIndent indent) override;
45 
51 
53 
58  vtkSetMacro(InputCoordinateSystem, int);
59  vtkGetMacro(InputCoordinateSystem, int);
60  void SetInputCoordinateSystemToDisplay() { this->SetInputCoordinateSystem(VTK_DISPLAY); }
61  void SetInputCoordinateSystemToViewport() { this->SetInputCoordinateSystem(VTK_VIEWPORT); }
62  void SetInputCoordinateSystemToWorld() { this->SetInputCoordinateSystem(VTK_WORLD); }
64 
66 
71  vtkSetMacro(OutputCoordinateSystem, int);
72  vtkGetMacro(OutputCoordinateSystem, int);
73  void SetOutputCoordinateSystemToDisplay() { this->SetOutputCoordinateSystem(VTK_DISPLAY); }
74  void SetOutputCoordinateSystemToViewport() { this->SetOutputCoordinateSystem(VTK_VIEWPORT); }
75  void SetOutputCoordinateSystemToWorld() { this->SetOutputCoordinateSystem(VTK_WORLD); }
77 
81  vtkMTimeType GetMTime() override;
82 
84 
91  void SetViewport(vtkViewport* viewport);
92  vtkGetObjectMacro(Viewport, vtkViewport);
94 
95 protected:
98 
100 
104 
106 
107 private:
109  void operator=(const vtkTransformCoordinateSystems&) = delete;
110 };
111 
112 #endif
perform coordinate transformation, and represent position, in a variety of vtk coordinate systems
Definition: vtkCoordinate.h:77
a simple class to control print indentation
Definition: vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Superclass for algorithms that produce output of the same type as input.
transform points into different coordinate systems
vtkMTimeType GetMTime() override
Return the MTime also considering the instance of vtkCoordinate.
void SetViewport(vtkViewport *viewport)
In order for a successful coordinate transformation to occur, an instance of vtkViewport (e....
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkTransformCoordinateSystems() override
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called by the superclass.
static vtkTransformCoordinateSystems * New()
Instantiate this class.
abstract specification for Viewports
Definition: vtkViewport.h:45
#define VTK_DISPLAY
Definition: vtkCoordinate.h:67
#define VTK_WORLD
Definition: vtkCoordinate.h:73
#define VTK_VIEWPORT
Definition: vtkCoordinate.h:69
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:293