VTK: Common/Transforms/vtkMatrixToLinearTransform.h Source File

| VTK 9.3.1

vtkMatrixToLinearTransform.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
3
20 #ifndef vtkMatrixToLinearTransform_h
21 #define vtkMatrixToLinearTransform_h
22
23 #include "vtkCommonTransformsModule.h" // For export macro
24 #include "vtkLinearTransform.h"
25
26 VTK_ABI_NAMESPACE_BEGIN
27 class vtkMatrix4x4;
28
29 class VTKCOMMONTRANSFORMS_EXPORT vtkMatrixToLinearTransform : public vtkLinearTransform
30 {
31 public:
32 static vtkMatrixToLinearTransform* New();
33 vtkTypeMacro(vtkMatrixToLinearTransform, vtkLinearTransform);
34 void PrintSelf(ostream& os, vtkIndent indent) override;
35
37
41 virtual void SetInput(vtkMatrix4x4*);
42 vtkGetObjectMacro(Input, vtkMatrix4x4);
44
49 void Inverse() override;
50
54 vtkMTimeType GetMTime() override;
55
59 vtkAbstractTransform* MakeTransform() override;
60
61 protected:
62 vtkMatrixToLinearTransform();
63 ~vtkMatrixToLinearTransform() override;
64
65 void InternalUpdate() override;
66 void InternalDeepCopy(vtkAbstractTransform* transform) override;
67
68 vtkTypeBool InverseFlag;
69 vtkMatrix4x4* Input;
70
71 private:
72 vtkMatrixToLinearTransform(const vtkMatrixToLinearTransform&) = delete;
73 void operator=(const vtkMatrixToLinearTransform&) = delete;
74 };
75
76 VTK_ABI_NAMESPACE_END
77 #endif
vtkAbstractTransform
superclass for all geometric transformations
Definition: vtkAbstractTransform.h:39
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkLinearTransform
abstract superclass for linear transformations
Definition: vtkLinearTransform.h:41
vtkMatrix4x4
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:40
vtkMatrixToLinearTransform
convert a matrix to a transform
Definition: vtkMatrixToLinearTransform.h:30
vtkMatrixToLinearTransform::Input
vtkMatrix4x4 * Input
Definition: vtkMatrixToLinearTransform.h:69
vtkMatrixToLinearTransform::InternalUpdate
void InternalUpdate() override
Perform any subclass-specific Update.
vtkMatrixToLinearTransform::SetInput
virtual void SetInput(vtkMatrix4x4 *)
Set the input matrix.
vtkMatrixToLinearTransform::MakeTransform
vtkAbstractTransform * MakeTransform() override
Make a new transform of the same type.
vtkMatrixToLinearTransform::InverseFlag
vtkTypeBool InverseFlag
Definition: vtkMatrixToLinearTransform.h:68
vtkMatrixToLinearTransform::~vtkMatrixToLinearTransform
~vtkMatrixToLinearTransform() override
vtkMatrixToLinearTransform::New
static vtkMatrixToLinearTransform * New()
vtkMatrixToLinearTransform::vtkMatrixToLinearTransform
vtkMatrixToLinearTransform()
vtkMatrixToLinearTransform::Inverse
void Inverse() override
The input matrix is left as-is, but the transformation matrix is inverted.
vtkMatrixToLinearTransform::InternalDeepCopy
void InternalDeepCopy(vtkAbstractTransform *transform) override
Perform any subclass-specific DeepCopy.
vtkMatrixToLinearTransform::GetMTime
vtkMTimeType GetMTime() override
Get the MTime: this is the bit of magic that makes everything work.
vtkMatrixToLinearTransform::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkTypeBool
int vtkTypeBool
Definition: vtkABI.h:64
vtkLinearTransform.h
vtkMTimeType
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270