ClassesClasses | | Operators

hom_mat2d_invertT_hom_mat2d_invertHomMat2dInvertHomMat2dInvert (Operator)

Name

hom_mat2d_invertT_hom_mat2d_invertHomMat2dInvertHomMat2dInvert — Invert a homogeneous 2D transformation matrix.

Signature

hom_mat2d_invert( : : HomMat2D : HomMat2DInvert)

Herror T_hom_mat2d_invert(const Htuple HomMat2D, Htuple* HomMat2DInvert)

void HomMat2dInvert(const HTuple& HomMat2D, HTuple* HomMat2DInvert)

HHomMat2D HHomMat2D::HomMat2dInvert() const

static void HOperatorSet.HomMat2dInvert(HTuple homMat2D, out HTuple homMat2DInvert)

HHomMat2D HHomMat2D.HomMat2dInvert()

Description

hom_mat2d_inverthom_mat2d_invertHomMat2dInvertHomMat2dInvertHomMat2dInvert inverts the homogeneous 2D transformation matrix given by HomMat2DHomMat2DHomMat2DHomMat2DhomMat2D. The resulting matrix is returned in HomMat2DInvertHomMat2DInvertHomMat2DInvertHomMat2DInverthomMat2DInvert.

Attention

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

is stored as the tuple [ra, rb, tc, rd, re, tf]. However, it is also possible to process full 3×3 matrices, which represent a projective 2D transformation.

Execution Information

Parameters

HomMat2DHomMat2DHomMat2DHomMat2DhomMat2D (input_control)  hom_mat2d HHomMat2D, HTupleHTupleHtuple (real) (double) (double) (double)

Input transformation matrix.

HomMat2DInvertHomMat2DInvertHomMat2DInvertHomMat2DInverthomMat2DInvert (output_control)  hom_mat2d HHomMat2D, HTupleHTupleHtuple (real) (double) (double) (double)

Output transformation matrix.

Result

hom_mat2d_inverthom_mat2d_invertHomMat2dInvertHomMat2dInvertHomMat2dInvert returns 2 (H_MSG_TRUE) if the parameters are valid and the input matrix is invertible. Otherwise, an exception is raised.

Possible Predecessors

hom_mat2d_translatehom_mat2d_translateHomMat2dTranslateHomMat2dTranslateHomMat2dTranslate, hom_mat2d_translate_localhom_mat2d_translate_localHomMat2dTranslateLocalHomMat2dTranslateLocalHomMat2dTranslateLocal, hom_mat2d_scalehom_mat2d_scaleHomMat2dScaleHomMat2dScaleHomMat2dScale, hom_mat2d_scale_localhom_mat2d_scale_localHomMat2dScaleLocalHomMat2dScaleLocalHomMat2dScaleLocal, hom_mat2d_rotatehom_mat2d_rotateHomMat2dRotateHomMat2dRotateHomMat2dRotate, hom_mat2d_rotate_localhom_mat2d_rotate_localHomMat2dRotateLocalHomMat2dRotateLocalHomMat2dRotateLocal, hom_mat2d_slanthom_mat2d_slantHomMat2dSlantHomMat2dSlantHomMat2dSlant, hom_mat2d_slant_localhom_mat2d_slant_localHomMat2dSlantLocalHomMat2dSlantLocalHomMat2dSlantLocal, hom_mat2d_reflecthom_mat2d_reflectHomMat2dReflectHomMat2dReflectHomMat2dReflect, hom_mat2d_reflect_localhom_mat2d_reflect_localHomMat2dReflectLocalHomMat2dReflectLocalHomMat2dReflectLocal

Possible Successors

hom_mat2d_translatehom_mat2d_translateHomMat2dTranslateHomMat2dTranslateHomMat2dTranslate, hom_mat2d_translate_localhom_mat2d_translate_localHomMat2dTranslateLocalHomMat2dTranslateLocalHomMat2dTranslateLocal, hom_mat2d_scalehom_mat2d_scaleHomMat2dScaleHomMat2dScaleHomMat2dScale, hom_mat2d_scale_localhom_mat2d_scale_localHomMat2dScaleLocalHomMat2dScaleLocalHomMat2dScaleLocal, hom_mat2d_rotatehom_mat2d_rotateHomMat2dRotateHomMat2dRotateHomMat2dRotate, hom_mat2d_rotate_localhom_mat2d_rotate_localHomMat2dRotateLocalHomMat2dRotateLocalHomMat2dRotateLocal, hom_mat2d_slanthom_mat2d_slantHomMat2dSlantHomMat2dSlantHomMat2dSlant, hom_mat2d_slant_localhom_mat2d_slant_localHomMat2dSlantLocalHomMat2dSlantLocalHomMat2dSlantLocal, hom_mat2d_reflecthom_mat2d_reflectHomMat2dReflectHomMat2dReflectHomMat2dReflect, hom_mat2d_reflect_localhom_mat2d_reflect_localHomMat2dReflectLocalHomMat2dReflectLocalHomMat2dReflectLocal

Module

Foundation


ClassesClasses | | Operators