VTK  9.3.0
vtkMatrixToHomogeneousTransform.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 vtkMatrixToHomogeneousTransform_h
21 #define vtkMatrixToHomogeneousTransform_h
22 
23 #include "vtkCommonTransformsModule.h" // For export macro
25 
26 VTK_ABI_NAMESPACE_BEGIN
27 class vtkMatrix4x4;
28 
29 class VTKCOMMONTRANSFORMS_EXPORT vtkMatrixToHomogeneousTransform : public vtkHomogeneousTransform
30 {
31 public:
34  void PrintSelf(ostream& os, vtkIndent indent) override;
35 
36  // Set the input matrix. Any modifications to the matrix will be
37  // reflected in the transformation.
38  virtual void SetInput(vtkMatrix4x4*);
39  vtkGetObjectMacro(Input, vtkMatrix4x4);
40 
45  void Inverse() override;
46 
50  vtkMTimeType GetMTime() override;
51 
56 
57 protected:
60 
61  void InternalUpdate() override;
62  void InternalDeepCopy(vtkAbstractTransform* transform) override;
63 
66 
67 private:
69  void operator=(const vtkMatrixToHomogeneousTransform&) = delete;
70 };
71 
72 VTK_ABI_NAMESPACE_END
73 #endif
superclass for all geometric transformations
superclass for homogeneous transformations
a simple class to control print indentation
Definition: vtkIndent.h:38
represent and manipulate 4x4 transformation matrices
Definition: vtkMatrix4x4.h:40
vtkAbstractTransform * MakeTransform() override
Make a new transform of the same type.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void Inverse() override
The input matrix is left as-is, but the transformation matrix is inverted.
static vtkMatrixToHomogeneousTransform * New()
void InternalDeepCopy(vtkAbstractTransform *transform) override
Perform any subclass-specific DeepCopy.
vtkMTimeType GetMTime() override
Get the MTime: this is the bit of magic that makes everything work.
virtual void SetInput(vtkMatrix4x4 *)
void InternalUpdate() override
Perform any subclass-specific Update.
int vtkTypeBool
Definition: vtkABI.h:64
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270