OpenStructure
Public Types | Public Member Functions | Protected Attributes
Transformation Class Reference

#include <transformation_base.hh>

Inherited by Rotate2D, Rotate2D90, Scale, and Translate.

Public Types

enum  SizeRule { ORIGINAL , FIT }
 

Public Member Functions

 Transformation ()
 
 Transformation (const Mat4 &tmat)
 
 Transformation (const Mat4 &tmat, const Mat4 &imat)
 
Mat4 & Matrix ()
 
const Mat4 & Matrix () const
 
Mat4 & InverseMatrix ()
 
const Mat4 & InverseMatrix () const
 
Point Apply (const Point &p)
 
Extent Apply (const Extent &e)
 

Protected Attributes

Mat4 tmat_
 
Mat4 imat_
 

Detailed Description

transformation base class

A transformation is defined by its matrix and the corresponding inverse. The transformation routine of the image class will use both to construct the result.

The extent of the newly created images can be defined in several ways: (1) size of the original image (2) maximal size to fit the transform

Usage of this class allows an arbitrary transformation, in form of a 4x4 matrix, to be specified. If only the forward matrix is given, the inverse will be calculated automatically.

Definition at line 54 of file transformation_base.hh.

Member Enumeration Documentation

◆ SizeRule

enum SizeRule
Enumerator
ORIGINAL 
FIT 

Definition at line 56 of file transformation_base.hh.

Constructor & Destructor Documentation

◆ Transformation() [1/3]

◆ Transformation() [2/3]

Transformation ( const Mat4 &  tmat)

◆ Transformation() [3/3]

Transformation ( const Mat4 &  tmat,
const Mat4 &  imat 
)

Member Function Documentation

◆ Apply() [1/2]

Extent Apply ( const Extent e)

◆ Apply() [2/2]

Point Apply ( const Point p)

◆ InverseMatrix() [1/2]

Mat4& InverseMatrix ( )
inline

Definition at line 65 of file transformation_base.hh.

◆ InverseMatrix() [2/2]

const Mat4& InverseMatrix ( ) const
inline

Definition at line 66 of file transformation_base.hh.

◆ Matrix() [1/2]

Mat4& Matrix ( )
inline

Definition at line 62 of file transformation_base.hh.

◆ Matrix() [2/2]

const Mat4& Matrix ( ) const
inline

Definition at line 63 of file transformation_base.hh.

Field Documentation

◆ imat_

Mat4 imat_
protected

Definition at line 74 of file transformation_base.hh.

◆ tmat_

Mat4 tmat_
protected

Definition at line 73 of file transformation_base.hh.


The documentation for this class was generated from the following file: