hom_mat3d_invert T_hom_mat3d_invert HomMat3dInvert HomMat3dInvert (Operator)
Name
hom_mat3d_invert T_hom_mat3d_invert HomMat3dInvert HomMat3dInvert
— Invert a homogeneous 3D transformation matrix.
Signature
Description
hom_mat3d_invert hom_mat3d_invert HomMat3dInvert HomMat3dInvert HomMat3dInvert
inverts the homogeneous 3D transformation
matrix given by HomMat3D HomMat3D HomMat3D HomMat3D homMat3D
. The resulting matrix is returned in
HomMat3DInvert HomMat3DInvert HomMat3DInvert HomMat3DInvert homMat3DInvert
.
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, rc, td, re, rf, rg, th, ri, rj, rk, tl].
However, it is also possible to process full 4×4 matrices,
which represent a projective 4D 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
HomMat3D HomMat3D HomMat3D HomMat3D homMat3D
(input_control) hom_mat3d →
HHomMat3D , HTuple HTuple Htuple (real) (double ) (double ) (double )
Input transformation matrix.
HomMat3DInvert HomMat3DInvert HomMat3DInvert HomMat3DInvert homMat3DInvert
(output_control) hom_mat3d →
HHomMat3D , HTuple HTuple Htuple (real) (double ) (double ) (double )
Output transformation matrix.
Result
hom_mat3d_invert hom_mat3d_invert HomMat3dInvert HomMat3dInvert HomMat3dInvert
returns 2 (H_MSG_TRUE) if the parameters are valid and the
input matrix is invertible. Otherwise, an exception is raised.
Possible Predecessors
hom_mat3d_translate hom_mat3d_translate HomMat3dTranslate HomMat3dTranslate HomMat3dTranslate
,
hom_mat3d_translate_local hom_mat3d_translate_local HomMat3dTranslateLocal HomMat3dTranslateLocal HomMat3dTranslateLocal
,
hom_mat3d_scale hom_mat3d_scale HomMat3dScale HomMat3dScale HomMat3dScale
,
hom_mat3d_scale_local hom_mat3d_scale_local HomMat3dScaleLocal HomMat3dScaleLocal HomMat3dScaleLocal
,
hom_mat3d_rotate hom_mat3d_rotate HomMat3dRotate HomMat3dRotate HomMat3dRotate
,
hom_mat3d_rotate_local hom_mat3d_rotate_local HomMat3dRotateLocal HomMat3dRotateLocal HomMat3dRotateLocal
,
pose_to_hom_mat3d pose_to_hom_mat3d PoseToHomMat3d PoseToHomMat3d PoseToHomMat3d
Possible Successors
hom_mat3d_translate hom_mat3d_translate HomMat3dTranslate HomMat3dTranslate HomMat3dTranslate
,
hom_mat3d_translate_local hom_mat3d_translate_local HomMat3dTranslateLocal HomMat3dTranslateLocal HomMat3dTranslateLocal
,
hom_mat3d_scale hom_mat3d_scale HomMat3dScale HomMat3dScale HomMat3dScale
,
hom_mat3d_scale_local hom_mat3d_scale_local HomMat3dScaleLocal HomMat3dScaleLocal HomMat3dScaleLocal
,
hom_mat3d_rotate hom_mat3d_rotate HomMat3dRotate HomMat3dRotate HomMat3dRotate
,
hom_mat3d_rotate_local hom_mat3d_rotate_local HomMat3dRotateLocal HomMat3dRotateLocal HomMat3dRotateLocal
,
hom_mat3d_to_pose hom_mat3d_to_pose HomMat3dToPose HomMat3dToPose HomMat3dToPose
Alternatives
pose_invert pose_invert PoseInvert PoseInvert PoseInvert
,
dual_quat_conjugate dual_quat_conjugate DualQuatConjugate DualQuatConjugate DualQuatConjugate
See also
affine_trans_point_3d affine_trans_point_3d AffineTransPoint3d AffineTransPoint3d AffineTransPoint3d
,
hom_mat3d_identity hom_mat3d_identity HomMat3dIdentity HomMat3dIdentity HomMat3dIdentity
,
hom_mat3d_rotate hom_mat3d_rotate HomMat3dRotate HomMat3dRotate HomMat3dRotate
,
hom_mat3d_translate hom_mat3d_translate HomMat3dTranslate HomMat3dTranslate HomMat3dTranslate
,
pose_to_hom_mat3d pose_to_hom_mat3d PoseToHomMat3d PoseToHomMat3d PoseToHomMat3d
,
hom_mat3d_to_pose hom_mat3d_to_pose HomMat3dToPose HomMat3dToPose HomMat3dToPose
,
hom_mat3d_compose hom_mat3d_compose HomMat3dCompose HomMat3dCompose HomMat3dCompose
Module
Foundation