hom_mat2d_translate ( : : HomMat2D, Tx, Ty : HomMat2DTranslate )

Add a translation to a homogeneous 2D transformation matrix.

hom_mat2d_translate adds a translation by the vector t = (Tx,Ty) to the homogeneous 2D transformation matrix HomMat2D and returns the resulting matrix in HomMat2DTranslate. The translation is performed relative to the global (i.e., fixed) coordinate system; this corresponds to the following chain of transformation matrices:

                        / 1 0 Tx \           
  HomMat2DTranslate  =  | 0 1 Ty | * HomMat2D
                        \ 0 0 1  /                    


Attention

Note that homogeneous matrices are stored row-by-row as a tuple; the last row is not stored because it is identical for all homogeneous matrices that describe an affine transformation. For example, the homogeneous matrix

    / ra rb tc \
    | rd re tf |
    \ 0  0  1  /

is stored as the tuple [ra, rb, tc, rd, re, tf].


Parameters

HomMat2D (input_control)
affine2d-array -> real
Input transformation matrix.
Number of elements: 6

Tx (input_control)
point.x -> real / integer
Translation along the x-axis.
Default value: 64
Suggested values: 0, 16, 32, 64, 128, 256, 512, 1024

Ty (input_control)
point.y -> real / integer
Translation along the y-axis.
Default value: 64
Suggested values: 0, 16, 32, 64, 128, 256, 512, 1024

HomMat2DTranslate (output_control)
affine2d-array -> real
Output transformation matrix.
Number of elements: 6


Result

If the parameters are valid, the operator hom_mat2d_translate returns 2 (H_MSG_TRUE). If necessary, an exception is raised.


Parallelization Information

hom_mat2d_translate is reentrant and processed without parallelization.


Possible Predecessors

hom_mat2d_identity, hom_mat2d_translate, hom_mat2d_scale, hom_mat2d_rotate, hom_mat2d_slant


Possible Successors

hom_mat2d_translate, hom_mat2d_scale, hom_mat2d_rotate, hom_mat2d_slant


Module

Basic operators



Copyright © 1996-2005 MVTec Software GmbH