VTK
dox
Interaction
Widgets
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 "vtkInteractionWidgetsModule.h"
// For export macro
43
#include "
vtkWidgetRepresentation.h
"
44
45
class
vtkTransform
;
46
47
class
VTKINTERACTIONWIDGETS_EXPORT
vtkAffineRepresentation
:
public
vtkWidgetRepresentation
48
{
49
public
:
51
54
vtkTypeMacro(
vtkAffineRepresentation
,
vtkWidgetRepresentation
);
55
void
PrintSelf
(ostream& os,
vtkIndent
indent)
override
;
57
64
virtual
void
GetTransform(
vtkTransform
*t) = 0;
65
67
72
vtkSetClampMacro(Tolerance,
int
,1,100);
73
vtkGetMacro(Tolerance,
int
);
75
76
// Enums define the state of the representation relative to the mouse pointer
77
// position. Used by ComputeInteractionState() to communicate with the
78
// widget.
79
enum
_InteractionState
80
{
81
Outside=0, Rotate, Translate, TranslateX,
TranslateY
, ScaleWEdge, ScaleEEdge,
82
ScaleNEdge, ScaleSEdge, ScaleNE,
ScaleSW
, ScaleNW, ScaleSE,
83
ShearEEdge,
ShearWEdge
, ShearNEdge, ShearSEdge,
84
MoveOriginX,
MoveOriginY
, MoveOrigin
85
};
86
90
void
ShallowCopy
(
vtkProp
*prop)
override
;
91
92
protected
:
93
vtkAffineRepresentation
();
94
~
vtkAffineRepresentation
()
override
;
95
96
// The tolerance for selecting different parts of the widget.
97
int
Tolerance
;
98
99
// The internal transformation matrix
100
vtkTransform
*
Transform
;
101
102
private
:
103
vtkAffineRepresentation
(
const
vtkAffineRepresentation
&) =
delete
;
104
void
operator=(
const
vtkAffineRepresentation
&) =
delete
;
105
};
106
107
#endif
vtkWidgetRepresentation.h
vtkWidgetRepresentation::ShallowCopy
void ShallowCopy(vtkProp *prop) override
Shallow copy of this vtkProp.
vtkAffineRepresentation::Transform
vtkTransform * Transform
Definition:
vtkAffineRepresentation.h:100
vtkWidgetRepresentation
abstract class defines interface between the widget and widget representation classes
Definition:
vtkWidgetRepresentation.h:60
vtkTransform
describes linear transformations via a 4x4 matrix
Definition:
vtkTransform.h:60
vtkAffineRepresentation
abstract class for representing affine transformation widgets
Definition:
vtkAffineRepresentation.h:47
vtkAffineRepresentation::MoveOriginY
Definition:
vtkAffineRepresentation.h:84
vtkIndent
a simple class to control print indentation
Definition:
vtkIndent.h:39
vtkAffineRepresentation::ShearWEdge
Definition:
vtkAffineRepresentation.h:83
vtkAffineRepresentation::ScaleSW
Definition:
vtkAffineRepresentation.h:82
vtkProp
abstract superclass for all actors, volumes and annotations
Definition:
vtkProp.h:52
vtkAffineRepresentation::_InteractionState
_InteractionState
Definition:
vtkAffineRepresentation.h:79
vtkAffineRepresentation::Tolerance
int Tolerance
Definition:
vtkAffineRepresentation.h:97
vtkAffineRepresentation::TranslateY
Definition:
vtkAffineRepresentation.h:81
vtkWidgetRepresentation::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
Generated by
1.8.16