VTK  9.2.6
vtkAffineRepresentation.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkAffineRepresentation.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 =========================================================================*/
39 #ifndef vtkAffineRepresentation_h
40 #define vtkAffineRepresentation_h
41 
42 #include "vtkDeprecation.h" // For VTK_DEPRECATED_IN_9_2_0
43 #include "vtkInteractionWidgetsModule.h" // For export macro
45 
46 class vtkTransform;
47 
48 class VTKINTERACTIONWIDGETS_EXPORT vtkAffineRepresentation : public vtkWidgetRepresentation
49 {
50 public:
52 
56  void PrintSelf(ostream& os, vtkIndent indent) override;
58 
65  virtual void GetTransform(vtkTransform* t) = 0;
66 
68 
73  vtkSetClampMacro(Tolerance, int, 1, 100);
74  vtkGetMacro(Tolerance, int);
76 
77  // Enums define the state of the representation relative to the mouse pointer
78  // position. Used by ComputeInteractionState() to communicate with the
79  // widget.
81  {
82  Outside = 0,
101  MoveOrigin
102  };
103 #if !defined(VTK_LEGACY_REMOVE)
104  VTK_DEPRECATED_IN_9_2_0("because leading underscore is reserved")
106 #endif
107 
111  void ShallowCopy(vtkProp* prop) override;
112 
113 protected:
115  ~vtkAffineRepresentation() override;
116 
117  // The tolerance for selecting different parts of the widget.
119 
120  // The internal transformation matrix
122 
123 private:
125  void operator=(const vtkAffineRepresentation&) = delete;
126 };
127 
128 #endif
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:56
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instances of this class.
void ShallowCopy(vtkProp *prop) override
Shallow copy of this vtkProp.
abstract class for representing affine transformation widgets
#define VTK_DEPRECATED_IN_9_2_0(reason)
describes linear transformations via a 4x4 matrix
Definition: vtkTransform.h:60
abstract class defines interface between the widget and widget representation classes ...
a simple class to control print indentation
Definition: vtkIndent.h:39