affine_trans_object_model_3d ( : : ObjectModel3DID, HomMat3D : ObjectModel3DIDAffineTrans )

Apply an arbitrary affine 3D transformation to a 3D object model.

affine_trans_object_model_3d applies an arbitrary affine 3D transformation, i.e., scaling, rotation, and translation, to a 3D object model and returns the handle of the transformed 3D object model. The affine transformation is described by the homogeneous transformation matrix given in HomMat3D.

The transformation matrix can be created using the operators hom_mat3d_identity, hom_mat3d_scale, hom_mat3d_rotate, hom_mat3d_translate, etc., or be the result of pose_to_hom_mat3d (see affine_trans_point_3d).

In general, the operator affine_trans_object_model_3d is not necessary in the context of 3D matching. If a rotation of the 3D object model into a reference orientation should be performed, instead appropriate values for the parameters RefRotX, RefRotY, RefRotZ, and OrderOfRotation should be passed to the operator create_shape_model_3d.


Parameters

ObjectModel3DID (input_control)
object_model_3d -> integer
Handle of the 3D object model.

HomMat3D (input_control)
hom_mat3d-array -> real
Transformation matrix.

ObjectModel3DIDAffineTrans (output_control)
number -> integer
Handle of the transformed 3D object model.


Result

affine_trans_object_model_3d returns 2 (H_MSG_TRUE) if all parameters are correct. If necessary, an exception is raised.


Parallelization Information

affine_trans_object_model_3d is processed completely exclusively without parallelization.


Possible Predecessors

read_object_model_3d_dxf


Possible Successors

project_object_model_3d


See also

affine_trans_point_3d


Module

3D Metrology


Up: Matching-3D    Top: HALCON Operators
Copyright © 1996-2008 MVTec Software GmbH