rigid_trans_object_model_3dT_rigid_trans_object_model_3dRigidTransObjectModel3dRigidTransObjectModel3drigid_trans_object_model_3d (算子名称)

名称

rigid_trans_object_model_3dT_rigid_trans_object_model_3dRigidTransObjectModel3dRigidTransObjectModel3drigid_trans_object_model_3d — Apply a rigid 3D transformation to 3D object models.

参数签名

rigid_trans_object_model_3d( : : ObjectModel3D, Pose : ObjectModel3DRigidTrans)

Herror T_rigid_trans_object_model_3d(const Htuple ObjectModel3D, const Htuple Pose, Htuple* ObjectModel3DRigidTrans)

void RigidTransObjectModel3d(const HTuple& ObjectModel3D, const HTuple& Pose, HTuple* ObjectModel3DRigidTrans)

static HObjectModel3DArray HObjectModel3D::RigidTransObjectModel3d(const HObjectModel3DArray& ObjectModel3D, const HPoseArray& Pose)

HObjectModel3D HObjectModel3D::RigidTransObjectModel3d(const HPose& Pose) const

static void HOperatorSet.RigidTransObjectModel3d(HTuple objectModel3D, HTuple pose, out HTuple objectModel3DRigidTrans)

static HObjectModel3D[] HObjectModel3D.RigidTransObjectModel3d(HObjectModel3D[] objectModel3D, HPose[] pose)

HObjectModel3D HObjectModel3D.RigidTransObjectModel3d(HPose pose)

def rigid_trans_object_model_3d(object_model_3d: MaybeSequence[HHandle], pose: Sequence[Union[float, int]]) -> Sequence[HHandle]

def rigid_trans_object_model_3d_s(object_model_3d: MaybeSequence[HHandle], pose: Sequence[Union[float, int]]) -> HHandle

描述

rigid_trans_object_model_3drigid_trans_object_model_3dRigidTransObjectModel3dRigidTransObjectModel3dRigidTransObjectModel3drigid_trans_object_model_3d applies rigid 3D transformations, i.e., rotations and translations, to 3D object models and returns the handles of the transformed 3D object models. The transformations are described by the poses given in PosePosePosePoseposepose, which are in the form , where mcsi denotes the coordinate system of the input object model and cst the coordinate system of the transformed model, e.g., the coordinate system of the scene (see Transformations / Poses and “Solution Guide III-C - 3D Vision”). A pose can be created using 该算子s create_posecreate_poseCreatePoseCreatePoseCreatePosecreate_pose, pose_invertpose_invertPoseInvertPoseInvertPoseInvertpose_invert, etc., or it can be the result of get_object_model_3d_paramsget_object_model_3d_paramsGetObjectModel3dParamsGetObjectModel3dParamsGetObjectModel3dParamsget_object_model_3d_params.

rigid_trans_object_model_3drigid_trans_object_model_3dRigidTransObjectModel3dRigidTransObjectModel3dRigidTransObjectModel3drigid_trans_object_model_3d transforms one or more 3D object models with the same pose if only one transformation matrix is passed in PosePosePosePoseposepose (N:1). If a single 3D object model is passed in ObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3Dobject_model_3d, it is transformed with all passed poses (1:N). If the number of poses corresponds to the number of 3D object models, every 3D object model is transformed individually with the respective pose (N:N). In those cases, N can be zero, i.e., no pose or no 3D object model can be passed to 该算子. In this case, an empty tuple is returned in ObjectModel3DRigidTransObjectModel3DRigidTransObjectModel3DRigidTransObjectModel3DRigidTransobjectModel3DRigidTransobject_model_3drigid_trans. This can be used to, for example, transform the results of find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModelfind_surface_model without checking first if at least one match was returned.

注意

rigid_trans_object_model_3drigid_trans_object_model_3dRigidTransObjectModel3dRigidTransObjectModel3dRigidTransObjectModel3drigid_trans_object_model_3d transforms the attributes of type 3D points, 3D point normals, and the prepared shape model for shape-based 3D 匹配, as well as 3D primitives. All other attributes are copied without modification.

运行信息

参数表

ObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3Dobject_model_3d (input_control)  object_model_3d(-array) HObjectModel3D, HTupleMaybeSequence[HHandle]HTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handles of the 3D object models.

PosePosePosePoseposepose (input_control)  pose(-array) HPose, HTupleSequence[Union[float, int]]HTupleHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)

Poses.

ObjectModel3DRigidTransObjectModel3DRigidTransObjectModel3DRigidTransObjectModel3DRigidTransobjectModel3DRigidTransobject_model_3drigid_trans (output_control)  object_model_3d(-array) HObjectModel3D, HTupleSequence[HHandle]HTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handles of the transformed 3D object models.

结果

rigid_trans_object_model_3drigid_trans_object_model_3dRigidTransObjectModel3dRigidTransObjectModel3dRigidTransObjectModel3drigid_trans_object_model_3d returns 2 ( H_MSG_TRUE) if all parameters are correct. 如有必要,将引发异常。

可能的前置算子

read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3dread_object_model_3d, xyz_to_object_model_3dxyz_to_object_model_3dXyzToObjectModel3dXyzToObjectModel3dXyzToObjectModel3dxyz_to_object_model_3d, fit_primitives_object_model_3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3dfit_primitives_object_model_3d

可能的后置算子

project_object_model_3dproject_object_model_3dProjectObjectModel3dProjectObjectModel3dProjectObjectModel3dproject_object_model_3d, object_model_3d_to_xyzobject_model_3d_to_xyzObjectModel3dToXyzObjectModel3dToXyzObjectModel3dToXyzobject_model_3d_to_xyz, get_object_model_3d_paramsget_object_model_3d_paramsGetObjectModel3dParamsGetObjectModel3dParamsGetObjectModel3dParamsget_object_model_3d_params

参考其它

affine_trans_point_3daffine_trans_point_3dAffineTransPoint3dAffineTransPoint3dAffineTransPoint3daffine_trans_point_3d, affine_trans_object_model_3daffine_trans_object_model_3dAffineTransObjectModel3dAffineTransObjectModel3dAffineTransObjectModel3daffine_trans_object_model_3d

模块

3D Metrology