Skip to main content

M3dmapCopy

BoardSupported
Host SystemYes
V4L2Yes
Clarity UHDYes
Concord PoENo
GenTLYes
GevIQYes
GigE VisionYes
IndioNo
Iris GTXYes
Radient eV-CLYes
Rapixo CLYes
Rapixo CoFYes
Rapixo CXPYes
USB3 VisionYes

Copy one or more point clouds from one M_POINT_CLOUD_RESULT result buffer to another.

Syntax

void M3dmapCopy(
AIL_ID SrcResult3dmapId, //in
AIL_INT SrcLabelOrIndex, //in
AIL_ID DstResult3dmapId, //out
AIL_INT DstLabel, //in
AIL_INT64 Operation, //in
AIL_INT64 ControlFlag //in
)

Description

This function copies or moves one or more point clouds from a source M_POINT_CLOUD_RESULT result buffer to a destination M_POINT_CLOUD_RESULT result buffer.

When copying/moving a specific point cloud, you must specify the label to assign it in the destination result buffer (using DstLabel); the label cannot already be assigned to an existing point cloud in the destination result buffer. If copying/moving all point clouds in the source result buffer (M_ALL), the destination result buffer must be empty; the copied/moved point clouds retain their original labels.

Parameters

SrcResult3dmapId (in, AIL_ID)

Specifies the identifier of the 3D reconstruction result buffer containing the source point clouds to copy/move. The 3D reconstruction result buffer must have been previously allocated using M3dmapAllocResult with M_POINT_CLOUD_RESULT.

SrcLabelOrIndex (in, AIL_INT)

Specifies the point cloud(s) to copy/move from the source M_POINT_CLOUD_RESULT result buffer.

For specifying the label or index of a specific source point cloud

ValueDescription
M_DEFAULT
M_POINT_CLOUD_INDEXSpecifies an existing point cloud with the given index.
M_POINT_CLOUD_LABELSpecifies an existing point cloud with the given label.
M_ALL (default)Specifies all point clouds in the source M_POINT_CLOUD_RESULT result buffer.

DstResult3dmapId (out, AIL_ID)

Specifies the identifier of the 3D reconstruction result buffer in which to copy/move the source point cloud(s). The 3D reconstruction result buffer must have been previously allocated using M3dmapAllocResult with M_POINT_CLOUD_RESULT. You can specify the same identifier as the SrcResult3dmapId identifier, but the label to assign the copied/moved point cloud must be different.

DstLabel (in, AIL_INT)

Specifies a new label in the destination M_POINT_CLOUD_RESULT result buffer in which to copy/move the source point cloud(s).

For specifying the label in the destination result buffer

ValueDescription
M_DEFAULT
M_POINT_CLOUD_LABELSpecifies the label to assign the specific point cloud in the destination buffer. This point cloud should not already exist in the destination result buffer.
M_ALL (default)Specifies all labels in the destination M_POINT_CLOUD_RESULT result buffer, which should not contain any point clouds.

Operation (in, AIL_INT64)

Specifies the type of operation to perform. This parameter should be set to one of the following values:

For specifying the type of operation to perform

ValueDescription
M_COPYSpecifies the point cloud is copied to the destination M_POINT_CLOUD_RESULT result buffer; the point cloud is not deleted from the source M_POINT_CLOUD_RESULT result buffer.

Note: Note that the specified point cloud retains its organizational type when copied, unless only valid points are copied (M_EXCLUDE_INVALID_POINTS). | | M_MOVE | Specifies the point cloud is moved to the destination M_POINT_CLOUD_RESULT result buffer; the point cloud is deleted from the source M_POINT_CLOUD_RESULT result buffer. This operation is faster than copying.

Any point cloud moved using M3dmapCopy retains its organizational type. |

For specifying whether to exclude invalid points

ValueDescription
M_EXCLUDE_INVALID_POINTSSpecifies to exclude all points in the specified M_POINT_CLOUD_RESULT result buffer that are set to M_INVALID_POINT. Only the valid points will be copied.

ControlFlag (in, AIL_INT64)

Reserved for future expansion and must be set to M_DEFAULT.

Copyright © 2026 Zebra Technologies.