set_origin_pose T_set_origin_pose SetOriginPose SetOriginPose set_origin_pose (Operator)
Name
set_origin_pose T_set_origin_pose SetOriginPose SetOriginPose set_origin_pose
— Translate the origin of a 3D pose.
Signature
def set_origin_pose (pose_in : Sequence[Union[int, float]], dx : float, dy : float, dz : float) -> Sequence[Union[int, float]]
Description
set_origin_pose set_origin_pose SetOriginPose SetOriginPose set_origin_pose
translates the origin of the 3D pose PoseIn PoseIn PoseIn poseIn pose_in
by the vector given by DX DX DX DX dx
, DY DY DY DY dy
, and DZ DZ DZ DZ dz
and returns
the result in PoseNewOrigin PoseNewOrigin PoseNewOrigin poseNewOrigin pose_new_origin
. Note that the translation is performed
relative to the local coordinate system of the pose itself. For example, if
PoseIn PoseIn PoseIn poseIn pose_in
describes the pose of an object in camera coordinates,
PoseNewOrigin PoseNewOrigin PoseNewOrigin poseNewOrigin pose_new_origin
is obtained by translating the object's coordinate
system by DX DX DX DX dx
along its own x-axis (and so on for the other axes) and
not along the x-axis of the camera coordinate system. This corresponds to the
following chain of transformations:
Thus, set_origin_pose set_origin_pose SetOriginPose SetOriginPose set_origin_pose
is a shortcut for the following sequence of
operator calls:
pose_to_hom_mat3d(PoseIn, HomMat3DIn) pose_to_hom_mat3d(PoseIn, HomMat3DIn) PoseToHomMat3d(PoseIn, HomMat3DIn) PoseToHomMat3d(PoseIn, HomMat3DIn) pose_to_hom_mat3d(PoseIn, HomMat3DIn)
hom_mat3d_translate_local(HomMat3DIn, DX, DY, DZ, HomMat3DNewOrigin) hom_mat3d_translate_local(HomMat3DIn, DX, DY, DZ, HomMat3DNewOrigin) HomMat3dTranslateLocal(HomMat3DIn, DX, DY, DZ, HomMat3DNewOrigin) HomMat3dTranslateLocal(HomMat3DIn, DX, DY, DZ, HomMat3DNewOrigin) hom_mat3d_translate_local(HomMat3DIn, DX, DY, DZ, HomMat3DNewOrigin)
hom_mat3d_to_pose(HomMat3DNewOrigin, PoseNewOrigin) hom_mat3d_to_pose(HomMat3DNewOrigin, PoseNewOrigin) HomMat3dToPose(HomMat3DNewOrigin, PoseNewOrigin) HomMat3dToPose(HomMat3DNewOrigin, PoseNewOrigin) hom_mat3d_to_pose(HomMat3DNewOrigin, PoseNewOrigin)
A typical application of this operator when defining a world
coordinate system by placing the standard calibration plate on the plane of
measurements. In this case, the external camera parameters returned by
camera_calibration camera_calibration CameraCalibration CameraCalibration camera_calibration
correspond to a coordinate system that lies above
the measurement plane, because the coordinate system of the calibration plate
is located on its surface and the plate has a certain thickness. To correct
the pose, call set_origin_pose set_origin_pose SetOriginPose SetOriginPose set_origin_pose
with the translation vector
(0,0,D), where D is the thickness of the calibration plate.
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
PoseIn PoseIn PoseIn poseIn pose_in
(input_control) pose →
HPose , HTuple Sequence[Union[int, float]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
original 3D pose.
Number of elements:
7
DX DX DX DX dx
(input_control) real →
HTuple float HTuple Htuple (real) (double ) (double ) (double )
translation of the origin in x-direction.
Default:
0
DY DY DY DY dy
(input_control) real →
HTuple float HTuple Htuple (real) (double ) (double ) (double )
translation of the origin in y-direction.
Default:
0
DZ DZ DZ DZ dz
(input_control) real →
HTuple float HTuple Htuple (real) (double ) (double ) (double )
translation of the origin in z-direction.
Default:
0
PoseNewOrigin PoseNewOrigin PoseNewOrigin poseNewOrigin pose_new_origin
(output_control) pose →
HPose , HTuple Sequence[Union[int, float]] HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
new 3D pose after applying the translation.
Number of elements:
7
Result
set_origin_pose set_origin_pose SetOriginPose SetOriginPose set_origin_pose
returns 2 (
H_MSG_TRUE )
if all parameter values are
correct. If necessary, an exception is raised.
Possible Predecessors
create_pose create_pose CreatePose CreatePose create_pose
,
hom_mat3d_to_pose hom_mat3d_to_pose HomMat3dToPose HomMat3dToPose hom_mat3d_to_pose
,
camera_calibration camera_calibration CameraCalibration CameraCalibration camera_calibration
,
hand_eye_calibration hand_eye_calibration HandEyeCalibration HandEyeCalibration hand_eye_calibration
Possible Successors
write_pose write_pose WritePose WritePose write_pose
,
pose_to_hom_mat3d pose_to_hom_mat3d PoseToHomMat3d PoseToHomMat3d pose_to_hom_mat3d
,
image_points_to_world_plane image_points_to_world_plane ImagePointsToWorldPlane ImagePointsToWorldPlane image_points_to_world_plane
,
contour_to_world_plane_xld contour_to_world_plane_xld ContourToWorldPlaneXld ContourToWorldPlaneXld contour_to_world_plane_xld
See also
hom_mat3d_translate_local hom_mat3d_translate_local HomMat3dTranslateLocal HomMat3dTranslateLocal hom_mat3d_translate_local
Module
Foundation