VTK
vtkLandmarkTransform.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkLandmarkTransform.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 =========================================================================*/
31 #ifndef vtkLandmarkTransform_h
32 #define vtkLandmarkTransform_h
33 
34 #include "vtkCommonTransformsModule.h" // For export macro
35 #include "vtkLinearTransform.h"
36 
37 #define VTK_LANDMARK_RIGIDBODY 6
38 #define VTK_LANDMARK_SIMILARITY 7
39 #define VTK_LANDMARK_AFFINE 12
40 
42 {
43 public:
45 
47  void PrintSelf(ostream& os, vtkIndent indent);
48 
50 
56  vtkGetObjectMacro(SourceLandmarks, vtkPoints);
57  vtkGetObjectMacro(TargetLandmarks, vtkPoints);
59 
61 
67  vtkSetMacro(Mode,int);
68  void SetModeToRigidBody() { this->SetMode(VTK_LANDMARK_RIGIDBODY); };
69  void SetModeToSimilarity() { this->SetMode(VTK_LANDMARK_SIMILARITY); };
70  void SetModeToAffine() { this->SetMode(VTK_LANDMARK_AFFINE); };
72 
74 
75  vtkGetMacro(Mode,int);
76  const char *GetModeAsString();
78 
81  void Inverse();
82 
84  unsigned long GetMTime();
85 
88 
89 protected:
92 
93  // Update the matrix from the quaternion.
95 
98 
101 
102  int Mode;
103 private:
104  vtkLandmarkTransform(const vtkLandmarkTransform&); // Not implemented.
105  void operator=(const vtkLandmarkTransform&); // Not implemented.
106 };
107 
108 //BTX
110 {
111  switch (this->Mode)
112  {
114  return "RigidBody";
116  return "Similarity";
117  case VTK_LANDMARK_AFFINE:
118  return "Affine";
119  default:
120  return "Unrecognized";
121  }
122 }
123 //ETX
124 #endif
vtkPoints
represent and manipulate 3D points
Definition: vtkPoints.h:39
vtkLandmarkTransform::vtkLandmarkTransform
vtkLandmarkTransform()
vtkGetObjectMacro
#define vtkGetObjectMacro(name, type)
Definition: vtkSetGet.h:232
vtkLinearTransform.h
vtkLandmarkTransform::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
vtkLandmarkTransform::GetMTime
unsigned long GetMTime()
vtkAbstractTransform
superclass for all geometric transformations
Definition: vtkAbstractTransform.h:50
vtkLandmarkTransform::SetModeToSimilarity
void SetModeToSimilarity()
Definition: vtkLandmarkTransform.h:69
vtkTypeMacro
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:642
vtkLandmarkTransform::GetModeAsString
const char * GetModeAsString()
Definition: vtkLandmarkTransform.h:109
vtkLandmarkTransform::SetTargetLandmarks
void SetTargetLandmarks(vtkPoints *points)
vtkLandmarkTransform::New
static vtkLandmarkTransform * New()
vtkgl::points
GLsizei const GLfloat * points
Definition: vtkgl.h:14786
vtkLinearTransform
abstract superclass for linear transformations
Definition: vtkLinearTransform.h:34
vtkLandmarkTransform::MakeTransform
vtkAbstractTransform * MakeTransform()
vtkLandmarkTransform::~vtkLandmarkTransform
~vtkLandmarkTransform()
vtkCommonTransformsModule.h
VTKCOMMONTRANSFORMS_EXPORT
#define VTKCOMMONTRANSFORMS_EXPORT
Definition: vtkCommonTransformsModule.h:15
VTK_LANDMARK_AFFINE
#define VTK_LANDMARK_AFFINE
Definition: vtkLandmarkTransform.h:39
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:39
VTK_LANDMARK_RIGIDBODY
#define VTK_LANDMARK_RIGIDBODY
Definition: vtkLandmarkTransform.h:37
VTK_LANDMARK_SIMILARITY
#define VTK_LANDMARK_SIMILARITY
Definition: vtkLandmarkTransform.h:38
vtkGetMacro
#define vtkGetMacro(name, type)
Definition: vtkSetGet.h:93
vtkLandmarkTransform::InternalDeepCopy
void InternalDeepCopy(vtkAbstractTransform *transform)
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
vtkLandmarkTransform::SetModeToRigidBody
void SetModeToRigidBody()
Definition: vtkLandmarkTransform.h:68
vtkLandmarkTransform::SetSourceLandmarks
void SetSourceLandmarks(vtkPoints *points)
vtkLandmarkTransform::InternalUpdate
void InternalUpdate()
vtkLandmarkTransform::Inverse
void Inverse()
vtkLandmarkTransform::Mode
int Mode
Definition: vtkLandmarkTransform.h:102
vtkLandmarkTransform::SetModeToAffine
void SetModeToAffine()
Definition: vtkLandmarkTransform.h:70
vtkLandmarkTransform::TargetLandmarks
vtkPoints * TargetLandmarks
Definition: vtkLandmarkTransform.h:100
vtkgl::transform
GLuint GLenum GLenum transform
Definition: vtkgl.h:16451
vtkLandmarkTransform::SourceLandmarks
vtkPoints * SourceLandmarks
Definition: vtkLandmarkTransform.h:99
vtkLandmarkTransform
a linear transform specified by two corresponding point sets
Definition: vtkLandmarkTransform.h:42