IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
ipsdk::math::transform::Similarity2d Class Reference
Inheritance diagram for ipsdk::math::transform::Similarity2d:
ipsdk::math::transform::BaseLinearGeometricTransform2d ipsdk::math::transform::BaseGeometricTransform2d

Public Types

enum  eTransformParams { eTP_Scale, eTP_Theta, eTP_Tx, eTP_Ty }
 

Public Member Functions

 IPSDK_DECLARE_TRANSFORM2D (Similarity2d)
 
void setParams (const ipReal64 scale, const ipReal64 theta, const ipReal64 tx, const ipReal64 ty)
 select parameters associated to transformation
 
void setParams (const Vector &params)
 select parameters associated to transformation More...
 
void setIdentity ()
 set transformation parameters to identity
 
void apply (ipReal64 &x, ipReal64 &y) const
 apply transformation to a given point
 
Matrix3d getHomogenousMatrix () const
 retrieve homogeneous matrix associated to transformation
 
Vector getParams () const
 retrieve parameters associated to transformation
 
Matrix3d getInvHomogenousMatrix () const
 retrieve invert of homogeneous matrix associated to transformation
 
Vector getInvParams () const
 retrieve invert parameters associated to transformation
 
Constructors and destructor
 Similarity2d ()
 
 Similarity2d (const ipReal64 scale, const ipReal64 theta, const ipReal64 tx, const ipReal64 ty)
 
 ~Similarity2d ()
 
ipReal64 getScale () const
 retrieve parameters associated to transformation
 
ipReal64 getTheta () const
 retrieve parameters associated to transformation
 
ipReal64 getTx () const
 retrieve parameters associated to transformation
 
ipReal64 getTy () const
 retrieve parameters associated to transformation
 
- Public Member Functions inherited from ipsdk::math::transform::BaseLinearGeometricTransform2d
bool isLinear () const
 retrieve flag indicating whether geometric transform is linear
 
 BaseLinearGeometricTransform2d ()
 
virtual ~BaseLinearGeometricTransform2d ()=0
 
- Public Member Functions inherited from ipsdk::math::transform::BaseGeometricTransform2d
virtual eGeometricTransform2dType getGeometricTransform2dType () const =0
 retrieve geometric transform 2d type
 
virtual ipUInt32 getNbParams () const =0
 retrieve number of parameters associated to geometric transformation
 
template<typename T >
void apply (const T xIn, const T yIn, T &xOut, T &yOut) const
 apply transformation to a given point
 
virtual bool isInvertible () const
 check whether transformation can be inverted
 
GeometricTransform2dPtr createInverted () const
 create an inversed transformation from current one More...
 
 BaseGeometricTransform2d ()
 
virtual ~BaseGeometricTransform2d ()
 

Static Public Member Functions

static Matrix3d getInvHomogenousMatrix (const ipReal64 scale, const ipReal64 theta, const ipReal64 tx, const ipReal64 ty)
 retrieve invert of homogeneous matrix associated to transformation
 
static void getInvParams (ipReal64 &scale, ipReal64 &theta, ipReal64 &tx, ipReal64 &ty)
 retrieve invert parameters for transformation
 
static Vector getIdentityParams ()
 retrieve identity parameters for transformation
 
static void transform (const ipReal64 scale, const ipReal64 theta, const ipReal64 tx, const ipReal64 ty, ipReal64 &x, ipReal64 &y)
 application of transformation to a point
 
static void transform (const ipReal64 scale, const ipReal64 cosTheta, const ipReal64 sinTheta, const ipReal64 tx, const ipReal64 ty, ipReal64 &x, ipReal64 &y)
 application of transformation to a point
 
static Matrix3d getHomogenousMatrix (const ipReal64 scale, const ipReal64 theta, const ipReal64 tx, const ipReal64 ty)
 retrieve homogeneous matrix associated to transformation
 
static Matrix3d getHomogenousMatrix (const ipReal64 scale, const ipReal64 cosTheta, const ipReal64 sinTheta, const ipReal64 tx, const ipReal64 ty)
 retrieve homogeneous matrix associated to transformation
 

Protected Attributes

ipReal64 _scale
 transformation scale
 
ipReal64 _theta
 angle of rotation in radians
 
ipReal64 _tx
 translation coordinate along x axis
 
ipReal64 _ty
 translation coordinate along y axis
 
ipReal64 _cosTheta
 computation intermediates
 
ipReal64 _sinTheta
 computation intermediates
 

Additional Inherited Members

- Static Public Attributes inherited from ipsdk::math::transform::BaseLinearGeometricTransform2d
static const bool g_bLinear = true
 linear status for transformation
 

Member Enumeration Documentation

◆ eTransformParams

parameters list associated to transformation

Note
This object is associated to a strong enumerate definition
See also
IPSDK_Enum
Enumerator
eTP_Scale 

transformation scale

eTP_Theta 

angle of rotation in radians

eTP_Tx 

translation along x axis

eTP_Ty 

translation along y axis

Member Function Documentation

◆ setParams()

void ipsdk::math::transform::Similarity2d::setParams ( const Vector params)
virtual

select parameters associated to transformation

Exceptions
ipsdk::math::IPSDKMathExceptionif params.size() != getNbParams()

Implements ipsdk::math::transform::BaseGeometricTransform2d.


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