Image Manager (CVCore.dll) 14.0
ITransformation

CVCKindOfTransform transformation. More...

Typedefs

typedef void * CVTRANSFORM
 CVB transformation handle. More...
 

Enumerations

enum  CVCKindOfTransform {
  CVCTK_Matrix2x2 , CVCTK_AffineMatrix3x2 , CVCTK_Matrix3x3 , CVCTK_AffineMatrix4x3 ,
  CVCTK_Matrix4x4 , CVCTK_PerspectiveWarp
}
 

Functions

cvbbool_t CVCIsTransformation (CVTRANSFORM hTransformation)
 Tests whether this is a CVB transformation object. More...
 
cvbres_t CVCTGetCoefficientCount (CVTRANSFORM hTransformation, cvbdim_t &Count)
 Gets the number of coefficients needed for the transformation. More...
 
cvbres_t CVCTGetCoefficients (CVTRANSFORM hTransformation, double *Coefficients)
 Writes the coefficients stored in the given hTransformation into the Coefficient buffer. More...
 
cvbres_t CVCTGetKind (CVTRANSFORM hTransformation, CVCKindOfTransform &Kind)
 Gets the kind of transformation the hTransformation represents. More...
 
cvbres_t CVCTSetCoefficients (CVTRANSFORM hTransformation, const double *Coefficients)
 Writes the given Coefficients buffer to the given hTransformation object. More...
 

Detailed Description

CVCKindOfTransform transformation.

Stores a fixed size of Count **Coefficient**s. The meaning of these **Coefficient**s is specified by their Kind (see CVCKindOfTransform).

Typedef Documentation

◆ CVTRANSFORM

CVB transformation handle.

The CVTRANSFORM is a reference counted OBJ handle. CVTRANSFORM objects at least implement the ITransformation interface.

Enumeration Type Documentation

◆ CVCKindOfTransform

Enumerator
CVCTK_Matrix2x2 

CVB IMG 2x2 matrix (TMatrix).

These four elements are stored in row-major order: A11, A12, A21, A22.

CVCTK_AffineMatrix3x2 

CVB IMG 2d affine matrix (TCoordinateMap).

These six elements are stored in the order Tx, Ty, A11, A12, A21, A22 (translation vector and row-major matrix).

CVCTK_Matrix3x3 

CVB CVCore3D 3D matrix (CVC3DMatrix).

These nine elements are stored in row-major order: A11, A12, A13, A21, .. , A32, A33.

CVCTK_AffineMatrix4x3 

CVB CVCore3D 3d affine matrix (CVC3DTransformation).

These 12 elements are stored in the order Tx, Ty, Tz, A11, A12, A13, A21, .. , A32, A33 (translation vector and row-major matrix).

CVCTK_Matrix4x4 

CVB CVCore3D 3d homography transformation matrix (CVC3DMatrixH).

These 16 elements are stored in row-major order: A11, A12, A13, A14, A21, .. , A43, A44.

CVCTK_PerspectiveWarp 

Perspective transformation coefficients C00 .. C22.

These nine coefficients are used by the PerspectiveTranformImage function of the CVFoundation library. They are stored in the order C00, C01, C02, C10, .. , C21, C22.

Function Documentation

◆ CVCIsTransformation()

cvbbool_t CVCIsTransformation ( CVTRANSFORM  hTransformation)

Tests whether this is a CVB transformation object.

Parameters
[in]hTransformationTransformation handle to test.
Returns
true if hTransformation is a transformation object, false if not.

◆ CVCTGetCoefficientCount()

cvbres_t CVCTGetCoefficientCount ( CVTRANSFORM  hTransformation,
cvbdim_t &  Count 
)

Gets the number of coefficients needed for the transformation.

Parameters
[in]hTransformationTransformation handle to query.
[out]CountVariable to receive the number of coefficient elements.
Returns
CVC_ERROR(CVC_E_WRONGOBJECT) if hComposite is not a CVTRANSFORM; CVC_ERROR(CVC_E_OK) on success.

◆ CVCTGetCoefficients()

cvbres_t CVCTGetCoefficients ( CVTRANSFORM  hTransformation,
double *  Coefficients 
)

Writes the coefficients stored in the given hTransformation into the Coefficient buffer.

Attention
Coefficients buffer must have at least CVCTGetCoefficientCount(CVTRANSFORM, cvbdim_t &) elements allocated.
Parameters
[in]hTransformationTransformation handle to query.
[in]CoefficientsBuffer to write coefficients to.
Returns
  • #CVC_ERROR (#CVC_E_OK) on success
  • #CVC_ERROR (#CVC_E_WRONGOBJECT) if hComposite is not an CVTRANSFORM
  • #CVC_ERROR (#CVC_E_PARAMETER) if Coefficients is nullptr

◆ CVCTGetKind()

cvbres_t CVCTGetKind ( CVTRANSFORM  hTransformation,
CVCKindOfTransform Kind 
)

Gets the kind of transformation the hTransformation represents.

Parameters
[in]hTransformationTransformation handle to query.
[out]KindVariable to receive the kind of transformation.
Returns
CVC_ERROR(CVC_E_WRONGOBJECT) if hComposite is not a CVTRANSFORM; CVC_ERROR(CVC_E_OK) on success.

◆ CVCTSetCoefficients()

cvbres_t CVCTSetCoefficients ( CVTRANSFORM  hTransformation,
const double *  Coefficients 
)

Writes the given Coefficients buffer to the given hTransformation object.

Parameters
[in]hTransformationTransformation to access.
[in]CoefficientsBuffer to read coefficients from.
Returns
  • #CVC_ERROR (#CVC_E_OK) on success
  • #CVC_ERROR (#CVC_E_WRONGOBJECT) if hComposite is not an CVTRANSFORM
  • #CVC_ERROR (#CVC_E_PARAMETER) if Coefficients is nullptr