Skip to main content

M3dblobDraw3d

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

Draw blobs and blob features into a 3D graphics list.

Syntax

AIL_INT64 M3dblobDraw3d(
AIL_ID OperationDraw3dContext3dblobId, //in
AIL_ID ContainerBufId, //in
AIL_ID Result3dblobId, //out
AIL_INT64 LabelOrIndex, //in
AIL_ID DstList3dgraId, //in
AIL_INT64 DstParentLabel, //in
AIL_INT64 ControlFlag //in
)

Description

This function draws blob points and/or features into the specified 3D graphics list. Set the draw operations and options for the draw using M3dblobControlDraw.

Note that the specified draw 3D blob analysis result buffer must contain the result of an M3dblobSegment operation, and, if you want to draw blob features, results of an M3dblobCalculate operation. Use M3dblobControlDraw to set whether to draw blob points, excluded points, and/or calculated blob features.

The resulting draw has the following structure: Top node --> Blobs --> Features. The subnodes for blobs 0, 1, …N are ordered in the 3D graphics list in the same sequence as the blob indices. If the excluded points are drawn (M_DRAW_EXCLUDED_POINTS set to M_ENABLE, using M3dblobControlDraw), they are the last subnode.

Parameters

OperationDraw3dContext3dblobId (in, AIL_ID)

Specifies the identifier of the draw 3D blob analysis context that specifies the features to draw and how to draw them.

For specifying the draw 3D blob analysis context identifier

ValueDescription
M_DEFAULTSpecifies a predefined draw 3D blob analysis context with all draw operations (M3dblobControlDraw) set to use default settings.
Draw 3D blob analysis context identifierSpecifies a valid draw 3D blob analysis context identifier, previously allocated using M3dblobAlloc with M_DRAW_3D_CONTEXT.

ContainerBufId (in, AIL_ID)

Specifies the identifier of the 3D-processable point cloud container from which to retrieve the blobs to draw. This must be the same container previously passed to M3dblobSegment, and its confidence component must not have been modified since then. If the segmentation was performed using a label image instead, this can be any container as long as the size of its range component is the same as the label image.

Result3dblobId (out, AIL_ID)

Specifies the identifier of the 3D blob analysis result buffer from which to retrieve calculated results and/or information about the blobs. The result buffer must have been previously allocated using M3dblobAllocResult.

LabelOrIndex (in, AIL_INT64)

Specifies the label or index of the blob whose points and/or calculated features you want to draw, or specifies all blobs. This parameter must be set to one of the following values:

For specifying the blob label or index

ValueDescription
M_BLOB_INDEXSpecifies the index of the blob.
M_BLOB_LABELSpecifies the label of the blob.
M_ALL_BLOBSSpecifies to draw the points and/or features of all blobs.
0 <= Value < M_NUMBERSpecifies the valid index of a blob.
1 <= Value <= M_MAX_LABEL_VALUESpecifies the valid label of a blob.

DstList3dgraId (in, AIL_ID)

Specifies the identifier of the 3D graphics list in which to draw. You can specify a 3D graphics list that you have previously allocated using M3dgraAlloc, or you can specify the identifier of the 3D display's internal graphics list (inquired using M3ddispInquire with M_3D_GRAPHIC_LIST_ID).

DstParentLabel (in, AIL_INT64)

Specifies the label of the 3D graphic in the 3D graphics list to use as the annotation's parent.

For specifying the parent label

ValueDescription
M_DEFAULTSame as M_ROOT_NODE.
M_ROOT_NODESpecifies the top-most node of the 3D graphics list.
Value >= 0Specifies the label of the 3D graphic in the 3D graphics list. Label 0 is the 3D graphics list's root node.

ControlFlag (in, AIL_INT64)

Reserved for future expansion and must be set to M_DEFAULT.

Return Value

Type: AIL_INT64

Returns the parent label of all 3D graphics that the function added to the 3D graphics list. If the specified 3D blob analysis result buffer does not contain a blob segmentation, a node 3D graphic is added to the graphics list and the node's label is returned.

Copyright © 2026 Zebra Technologies.