Transformation Class Reference

transformation base class More...

#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

enum SizeRule
Enumerator:
ORIGINAL 
FIT 

Definition at line 56 of file transformation_base.hh.


Constructor & Destructor Documentation

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

Member Function Documentation

Extent Apply ( const Extent e  ) 
Point Apply ( const Point p  ) 
const Mat4& InverseMatrix (  )  const [inline]

Definition at line 66 of file transformation_base.hh.

Mat4& InverseMatrix (  )  [inline]

Definition at line 65 of file transformation_base.hh.

const Mat4& Matrix (  )  const [inline]

Definition at line 63 of file transformation_base.hh.

Mat4& Matrix (  )  [inline]

Definition at line 62 of file transformation_base.hh.


Field Documentation

Mat4 imat_ [protected]

Definition at line 74 of file transformation_base.hh.

Mat4 tmat_ [protected]

Definition at line 73 of file transformation_base.hh.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines

Generated on 1 Mar 2018 for OpenStructure by  doxygen 1.6.1