copy_object_model_3d
— Copy a 3D object model.
copy_object_model_3d( : : ObjectModel3D, Attributes : CopiedObjectModel3D)
A 3D object model consists of a set of attributes.
The operator copy_object_model_3d
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 ObjectModel3D
. The
operator returns the handle CopiedObjectModel3D
of the new 3D object model.
The operator can be used to save memory
space by removing not needed attributes. Access to the attributes of
the 3D object model is possible, e.g., with the operator
get_object_model_3d_params
.
The parameter Attributes
determines which attributes
should be copied. In addition, attributes can be excluded from
copying by using the prefix ~. In order to remove
attributes from a 3D object model, the operator
remove_object_model_3d_attrib
can be used instead.
Note that because a 3D object model itself consists of a
set of attributes, even the point coordinates are an attribute
of the model. This means, that at least this one attribute must be
selected for copy_object_model_3d
else the object model
to be copied would be empty. So if only
a 3D object model representing a point cloud shall be copied
without further attributes, Attributes
must be set
to 'point_coord' .
If an attribute to be copied is not available or no attribute
is selected, an exception is raised.
The following
values for the parameter Attributes
are possible:
This value specifies that the attribute with the 3D point coordinates is copied.
This value specifies that the attribute with the 3D point normals and the attribute with the 3D point coordinates are copied.
This value specifies that the attribute with the face triangles and attribute with the 3D point coordinates are copied.
This value specifies that the attribute with the face polygons and the attribute with the 3D point coordinates are copied.
This value specifies that the attribute with the lines and the attribute with the 3D point coordinates are copied.
This value specifies that the attribute with the mapping to image coordinates and the attribute with the 3D point coordinates are copied.
This value specifies that all extended attributes are copied. If it is necessary to copy further attributes that are related to the extended attributes, these attributes are copied, too. These further attributes could be, e.g., 3D point coordinates, face triangles, face polygons, or lines.
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_3d
).
This value specifies that the
attribute with the primitive plane is copied (e.g., obtained from
the operator fit_primitives_object_model_3d
).
This value specifies that the
attribute with the primitive sphere is copied (e.g., obtained from
the operator fit_primitives_object_model_3d
).
This value specifies that the
attribute with the primitive cylinder is copied (e.g., obtained from
the operator fit_primitives_object_model_3d
).
This value specifies that the attribute with the primitive cylinder is copied.
This value specifies that the attribute with the prepared shape model for shape-based 3D matching is copied.
This value
specifies that the attribute with the distance computation data
structure is copied.
The distance computation data can be created with
prepare_object_model_3d
, and can be used with
distance_object_model_3d
.
If this attribute is selected, then the corresponding target
data attribute of the distance computation is copied as well.
For example, if the distance computation was prepared for triangles,
the triangles and the vertices are copied.
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 coordinates to the image coordinates is copied. If the attribute with the mapping from the 3D point coordinates 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.
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 triangles are copied. If the attribute with the face triangles is not available, the attribute with the mapping from the 3D point coordinates to the image coordinates is copied. If none of these attributes is available, an exception is raised.
This value specifies that the
attribute with the scores and the attribute with the 3D point coordinates
are copied. Scores may be obtained from the operator
reconstruct_surface_stereo
.
This value specifies that the attribute containing the red color and the attribute with the 3D point coordinates are copied.
This value specifies that the attribute containing the green color and the attribute with the 3D point coordinates are copied.
This value specifies that the attribute containing the blue color and the attribute with the 3D point coordinates are copied.
This value specifies that the
attribute with the original point indices and the attribute with the 3D
point coordinates are copied.
Original point indices may be obtained from the operator
triangulate_object_model_3d
.
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, the parameter of a primitive, and the extended attributes.
ObjectModel3D
(input_control) object_model_3d →
(handle)
Handle of the input 3D object model.
Attributes
(input_control) string(-array) →
(string / real / integer)
Attributes to be copied.
Default: 'all'
List of values: 'all' , 'blue' , 'distance_computation_data' , 'extended_attribute' , 'green' , 'original_point_indices' , 'point_coord' , 'point_normal' , 'polygons' , 'primitive_box' , 'primitive_cylinder' , 'primitive_plane' , 'primitive_sphere' , 'primitives_all' , 'red' , 'score' , 'segmentation_data' , 'shape_based_matching_3d_data' , 'surface_based_matching_data' , 'triangles' , 'xyz_mapping'
CopiedObjectModel3D
(output_control) object_model_3d →
(handle)
Handle of the copied 3D object model.
copy_object_model_3d
returns 2 (
H_MSG_TRUE)
if all parameter values
are correct. If necessary, an exception is raised.
read_object_model_3d
,
xyz_to_object_model_3d
remove_object_model_3d_attrib
,
set_object_model_3d_attrib
3D Metrology