HALCON Reference Manual 10.0.2
Table of Contents / 3D Tools / 3D Object Model ClassesClassesClasses | | | Operators

copy_object_model_3dcopy_object_model_3dcopy_object_model_3dCopyObjectModel3dCopyObjectModel3d (Operator)

Name

copy_object_model_3dcopy_object_model_3dcopy_object_model_3dCopyObjectModel3dCopyObjectModel3d — Copy a 3D object model.

Signature

copy_object_model_3d( : : ObjectModel3DID, Attributes : CopiedObjectModel3DID)

Herror copy_object_model_3d(const Hlong ObjectModel3DID, const char* Attributes, Hlong* CopiedObjectModel3DID)

Herror T_copy_object_model_3d(const Htuple ObjectModel3DID, const Htuple Attributes, Htuple* CopiedObjectModel3DID)

Herror copy_object_model_3d(const HTuple& ObjectModel3DID, const HTuple& Attributes, Hlong* CopiedObjectModel3DID)

HObjectModel3D HObjectModel3D::CopyObjectModel3d(const HTuple& Attributes) const

void HOperatorSetX.CopyObjectModel3d(
[in] VARIANT ObjectModel3DID, [in] VARIANT Attributes, [out] VARIANT* CopiedObjectModel3DID)

IHObjectModel3DX* HObjectModel3DX.CopyObjectModel3d([in] VARIANT Attributes)

static void HOperatorSet.CopyObjectModel3d(HTuple objectModel3DID, HTuple attributes, out HTuple copiedObjectModel3DID)

HObjectModel3D HObjectModel3D.CopyObjectModel3d(HTuple attributes)

HObjectModel3D HObjectModel3D.CopyObjectModel3d(string attributes)

Description

A 3D object model consists of a set of attributes. The operator copy_object_model_3dcopy_object_model_3dcopy_object_model_3dCopyObjectModel3dCopyObjectModel3d creates a new 3D object model and copies the selected attributes of the input 3D object model to this new output 3D object model. The input 3D object model is defined by a handle ObjectModel3DIDObjectModel3DIDObjectModel3DIDObjectModel3DIDobjectModel3DID. The operator returns the handle CopiedObjectModel3DIDCopiedObjectModel3DIDCopiedObjectModel3DIDCopiedObjectModel3DIDcopiedObjectModel3DID of the new 3D object model. The operator can be used to save memory space. Access to the attributes of the 3D object model is possible, e.g., with the operator get_object_model_3d_paramsget_object_model_3d_paramsget_object_model_3d_paramsGetObjectModel3dParamsGetObjectModel3dParams.

One or more attributes can be copied with the parameter AttributesAttributesAttributesAttributesattributes. In addition, attributes can be excluded from copying by using the prefix ~. If an attribute to be copied is not available, an exeption is raised. The following values for the parameter AttributesAttributesAttributesAttributesattributes are possible:

'point_coord'"point_coord""point_coord""point_coord""point_coord":

This value specifies that the attribute with the 3D point coordinates is copied.

'point_normal'"point_normal""point_normal""point_normal""point_normal":

This value specifies that the attribute with the 3D point normals and the attribute with the 3D point coordinates are copied.

'face_triangle'"face_triangle""face_triangle""face_triangle""face_triangle":

This value specifies that the attribute with the face triangles and attribute with the 3D point coordinates are copied.

'face_polygon'"face_polygon""face_polygon""face_polygon""face_polygon":

This value specifies that the attribute with the face polygons and the attribute with the 3D point coordinates are copied.

'xyz_mapping'"xyz_mapping""xyz_mapping""xyz_mapping""xyz_mapping":

This value specifies that the attribute with the mapping to image coordinates and the attribute with the 3D point coordinates are copied.

'primitives_all'"primitives_all""primitives_all""primitives_all""primitives_all":

This value specifies that the attribute with the parameters of the primitive (including an empty primitive) is copied (e.g. obtained from the operator fit_primitives_object_model_3dfit_primitives_object_model_3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3d).

'primitive_plane'"primitive_plane""primitive_plane""primitive_plane""primitive_plane":

This value specifies that the attribute with the primitive plane is copied (e.g. obtained from the operator fit_primitives_object_model_3dfit_primitives_object_model_3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3d).

'primitive_sphere'"primitive_sphere""primitive_sphere""primitive_sphere""primitive_sphere":

This value specifies that the attribute with the primitive sphere is copied (e.g. obtained from the operator fit_primitives_object_model_3dfit_primitives_object_model_3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3d).

'primitive_cylinder'"primitive_cylinder""primitive_cylinder""primitive_cylinder""primitive_cylinder":

This value specifies that the attribute with the primitive cylinder is copied (e.g. obtained from the operator fit_primitives_object_model_3dfit_primitives_object_model_3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3d).

'shape_based_matching_3d_data'"shape_based_matching_3d_data""shape_based_matching_3d_data""shape_based_matching_3d_data""shape_based_matching_3d_data":

This value specifies that the attribute with the prepared shape model for shape-based 3D matching is copied.

'surface_based_matching_data'"surface_based_matching_data""surface_based_matching_data""surface_based_matching_data""surface_based_matching_data":

This value specifies that the data for surface based matching are copied. The attributes with the 3D point coordinates and the attribute with the point normals are copied. If the attribute with point normals is not available, the attribute with the mapping from the 3D point coodinates to the image coordinates is copied. If the attribute with the mapping from the 3D point coodinates to the image coordinates is not available, the attribute with the face triangles is copied. If the attribute with face triangles is not available, too, the attribute with the face polygons is copied. If none of these attributes is available, an exception is raised.

'segmentation_data'"segmentation_data""segmentation_data""segmentation_data""segmentation_data":

This value specifies that the data for a 3D segmentation is copied. The attributes with the 3D point coordinates and the attribute with the face traingles are copied. If the attribute with the face triangles is not available, the attribute with the mapping from the 3D point coodinates to the image coordinates is copied. If none of these attributes is available, an exception is raised.

'all'"all""all""all""all":

This value specifies that all available attributes are copied. That is, the attributes are the point coordinates, the point normals, the face triangles, the face polygons, the mapping to image coordinates, the shape model for matching, and the parameter of a primitive.

Parallelization

Parameters

ObjectModel3DIDObjectModel3DIDObjectModel3DIDObjectModel3DIDobjectModel3DID (input_control)  object_model_3d HObjectModel3D, HTupleHObjectModel3D, HTupleHObjectModel3DX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong)

Handle of the input 3D object model.

AttributesAttributesAttributesAttributesattributes (input_control)  string(-array) HTupleHTupleVARIANTHtuple (string / real / integer) (string / double / int / long) (char* / double / Hlong) (BSTR / double / Hlong) (char* / double / Hlong)

Attributes to be copyied.

Default value: 'all' "all" "all" "all" "all"

List of values: 'point_coord'"point_coord""point_coord""point_coord""point_coord", 'point_normal'"point_normal""point_normal""point_normal""point_normal", 'face_triangle'"face_triangle""face_triangle""face_triangle""face_triangle", 'face_polygon'"face_polygon""face_polygon""face_polygon""face_polygon", 'xyz_mapping'"xyz_mapping""xyz_mapping""xyz_mapping""xyz_mapping", 'shape_based_matching_3d_data'"shape_based_matching_3d_data""shape_based_matching_3d_data""shape_based_matching_3d_data""shape_based_matching_3d_data", 'primitives_all'"primitives_all""primitives_all""primitives_all""primitives_all", 'primitive_plane'"primitive_plane""primitive_plane""primitive_plane""primitive_plane", 'primitive_sphere'"primitive_sphere""primitive_sphere""primitive_sphere""primitive_sphere", 'primitive_cylinder'"primitive_cylinder""primitive_cylinder""primitive_cylinder""primitive_cylinder", 'surface_based_matching_data'"surface_based_matching_data""surface_based_matching_data""surface_based_matching_data""surface_based_matching_data", 'segmentation_data'"segmentation_data""segmentation_data""segmentation_data""segmentation_data", 'all'"all""all""all""all"

CopiedObjectModel3DIDCopiedObjectModel3DIDCopiedObjectModel3DIDCopiedObjectModel3DIDcopiedObjectModel3DID (output_control)  object_model_3d HObjectModel3D, HTupleHObjectModel3D, HTupleHObjectModel3DX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong)

Handle of the copied 3D object model.

Result

copy_object_model_3dcopy_object_model_3dcopy_object_model_3dCopyObjectModel3dCopyObjectModel3d returns 2 (H_MSG_TRUE) if all parameter values are correct. If necessary, an exception is raised.

Possible Predecessors

read_object_model_3dread_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3d, xyz_to_object_model_3dxyz_to_object_model_3dxyz_to_object_model_3dXyzToObjectModel3dXyzToObjectModel3d

Possible Successors

get_object_model_3d_paramsget_object_model_3d_paramsget_object_model_3d_paramsGetObjectModel3dParamsGetObjectModel3dParams

Module

3D Metrology


Table of Contents / 3D Tools / 3D Object Model ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH