hom_mat2d_invert T_hom_mat2d_invert HomMat2dInvert HomMat2dInvert (Operator)
Name
hom_mat2d_invert T_hom_mat2d_invert HomMat2dInvert HomMat2dInvert
— Invert a homogeneous 2D transformation matrix.
Signature
Description
hom_mat2d_invert hom_mat2d_invert HomMat2dInvert HomMat2dInvert HomMat2dInvert
inverts the homogeneous 2D transformation
matrix given by HomMat2D HomMat2D HomMat2D HomMat2D homMat2D
. The resulting matrix is returned in
HomMat2DInvert HomMat2DInvert HomMat2DInvert HomMat2DInvert homMat2DInvert
.
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
Multithreading type: reentrant (runs in parallel with non-exclusive operators).
Multithreading scope: global (may be called from any thread).
Processed without parallelization.
Parameters
HomMat2D HomMat2D HomMat2D HomMat2D homMat2D
(input_control) hom_mat2d →
HHomMat2D , HTuple HTuple Htuple (real) (double ) (double ) (double )
Input transformation matrix.
HomMat2DInvert HomMat2DInvert HomMat2DInvert HomMat2DInvert homMat2DInvert
(output_control) hom_mat2d →
HHomMat2D , HTuple HTuple Htuple (real) (double ) (double ) (double )
Output transformation matrix.
Result
hom_mat2d_invert hom_mat2d_invert HomMat2dInvert HomMat2dInvert HomMat2dInvert
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_translate hom_mat2d_translate HomMat2dTranslate HomMat2dTranslate HomMat2dTranslate
,
hom_mat2d_translate_local hom_mat2d_translate_local HomMat2dTranslateLocal HomMat2dTranslateLocal HomMat2dTranslateLocal
,
hom_mat2d_scale hom_mat2d_scale HomMat2dScale HomMat2dScale HomMat2dScale
,
hom_mat2d_scale_local hom_mat2d_scale_local HomMat2dScaleLocal HomMat2dScaleLocal HomMat2dScaleLocal
,
hom_mat2d_rotate hom_mat2d_rotate HomMat2dRotate HomMat2dRotate HomMat2dRotate
,
hom_mat2d_rotate_local hom_mat2d_rotate_local HomMat2dRotateLocal HomMat2dRotateLocal HomMat2dRotateLocal
,
hom_mat2d_slant hom_mat2d_slant HomMat2dSlant HomMat2dSlant HomMat2dSlant
,
hom_mat2d_slant_local hom_mat2d_slant_local HomMat2dSlantLocal HomMat2dSlantLocal HomMat2dSlantLocal
,
hom_mat2d_reflect hom_mat2d_reflect HomMat2dReflect HomMat2dReflect HomMat2dReflect
,
hom_mat2d_reflect_local hom_mat2d_reflect_local HomMat2dReflectLocal HomMat2dReflectLocal HomMat2dReflectLocal
Possible Successors
hom_mat2d_translate hom_mat2d_translate HomMat2dTranslate HomMat2dTranslate HomMat2dTranslate
,
hom_mat2d_translate_local hom_mat2d_translate_local HomMat2dTranslateLocal HomMat2dTranslateLocal HomMat2dTranslateLocal
,
hom_mat2d_scale hom_mat2d_scale HomMat2dScale HomMat2dScale HomMat2dScale
,
hom_mat2d_scale_local hom_mat2d_scale_local HomMat2dScaleLocal HomMat2dScaleLocal HomMat2dScaleLocal
,
hom_mat2d_rotate hom_mat2d_rotate HomMat2dRotate HomMat2dRotate HomMat2dRotate
,
hom_mat2d_rotate_local hom_mat2d_rotate_local HomMat2dRotateLocal HomMat2dRotateLocal HomMat2dRotateLocal
,
hom_mat2d_slant hom_mat2d_slant HomMat2dSlant HomMat2dSlant HomMat2dSlant
,
hom_mat2d_slant_local hom_mat2d_slant_local HomMat2dSlantLocal HomMat2dSlantLocal HomMat2dSlantLocal
,
hom_mat2d_reflect hom_mat2d_reflect HomMat2dReflect HomMat2dReflect HomMat2dReflect
,
hom_mat2d_reflect_local hom_mat2d_reflect_local HomMat2dReflectLocal HomMat2dReflectLocal HomMat2dReflectLocal
Module
Foundation