Skip to main content

M3dmodInquireDraw

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

Inquire about a setting of a draw 3D model finder context.

Syntax

AIL_INT64 M3dmodInquireDraw(
AIL_ID DrawContext3dmodId, //in
AIL_INT64 Operation, //in
AIL_INT64 InquireType, //in
void * UserVarPtr //out
)

Description

This function inquires about a specified setting of a draw 3D model finder context. These settings establish which features of a model or which results of found model occurrences to draw into the 3D graphics list when calling M3dmodDraw3d and how to draw them.

You can control the draw 3D model finder context settings using M3dmodControlDraw.

Parameters

DrawContext3dmodId (in, AIL_ID)

Specifies the identifier of the draw 3D model finder context to inquire. The draw 3D model finder context must have been previously allocated on the required system using M3dmodAlloc with either M_DRAW_3D_GEOMETRIC_CONTEXT (to draw occurrences of geometric models) or M_DRAW_3D_SURFACE_CONTEXT (to draw surface models or occurrences of surface models).

Operation (in, AIL_INT64)

Specifies the draw operation about which to inquire.

InquireType (in, AIL_INT64)

Specifies the type of setting about which to inquire.

UserVarPtr *(out, void)

Specifies the address in which to write the requested information. Since the M3dmodInquireDraw function also returns the requested information, you can set this parameter to M_NULL.

Parameter Associations

For inquiring a draw geometric or surface 3D model finder context

The following Operation and InquireType parameter settings can be specified for a draw 3D model finder context.


M_DRAW_AXES

Inquires whether and how to draw the axes of either the model or each specified occurrence when calling M3dmodDraw3d, depending on whether a find 3D model finder context or result buffer is specified.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_LENGTH

Inquires the length of the graphic(s).

ValueDescription
(see M_LENGTH)

M_REFERENCE_X

Inquires the X-position of the graphic(s) origin, relative to the model or occurrence. Note that M_REFERENCE_X is only available for a draw surface 3D model finder context.

ValueDescription
(see M_REFERENCE_X)

M_REFERENCE_Y

Inquires the Y-position of the graphic(s) origin, relative to the model or occurrence. Note that M_REFERENCE_Y is only available for a draw surface 3D model finder context.

ValueDescription
(see M_REFERENCE_Y)

M_REFERENCE_Z

Inquires the Z-position of the graphic(s) origin, relative to the model or occurrence. Note that M_REFERENCE_Z is only available for a draw surface 3D model finder context.

ValueDescription
(see M_REFERENCE_Z)

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

M_DRAW_BOX

Inquires whether and how to draw the bounding box of each specified occurrence when calling M3dmodDraw3d. The bounding box is the smallest-axis aligned box that contains the ideal geometric shape or surface of the model at the location of the occurrence, depending on the model type. If you enable M_DRAW_MODEL, the bounding box is the smallest axis-aligned box that contains that graphic. Note that it does not necessarily contain all inlier points.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_APPEARANCE

Inquires whether to draw the graphic(s) as a solid surface, wireframe, or points.

ValueDescription
(see M_APPEARANCE)

M_COLOR

Inquires the color with which to draw the graphic(s).

ValueDescription
(see M_COLOR)
Byte-encoded RGB valueSpecifies an encoded RGB value. To verify if the value is a byte-encoded RGB value, use theM_IS_RGB888 macro. To retrieve the R, G, and B bands, use the M_RGB888_R, M_RGB888_G, and M_RGB888_B macros.

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

M_DRAW_INDEX

Inquires whether and how to draw the index of each specified occurrence when calling M3dmodDraw3d.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_COLOR

Inquires the color with which to draw the graphic(s).

ValueDescription
(see M_COLOR)
Byte-encoded RGB valueSpecifies an encoded RGB value. To verify if the value is a byte-encoded RGB value, use theM_IS_RGB888 macro. To retrieve the R, G, and B bands, use the M_RGB888_R, M_RGB888_G, and M_RGB888_B macros.

M_FONT_SIZE

Inquires the size of the font with which to draw the graphic(s).

ValueDescription
(see M_FONT_SIZE)

M_OPACITY

Inquires the opacity with which to draw the graphic(s).

ValueDescription
(see M_OPACITY)

M_REFERENCE_X

Inquires the X-position of the graphic(s) origin, relative to the occurrence.

ValueDescription
(see M_REFERENCE_X)

M_REFERENCE_Y

Inquires the Y-position of the graphic(s) origin, relative to the occurrence.

ValueDescription
(see M_REFERENCE_Y)

M_REFERENCE_Z

Inquires the Z-position of the graphic(s) origin, relative to the occurrence.

ValueDescription
(see M_REFERENCE_Z)

M_RENDER_LAYER

Inquires the layer on which to draw the graphic(s).

ValueDescription
(see M_RENDER_LAYER)

M_TEXT_DIRECTION

Inquires the direction to draw the graphic(s).

ValueDescription
(see M_TEXT_DIRECTION)

M_DRAW_INLIER_POINTS

Inquires whether and how to draw the inlier points, based on M_FIT_DISTANCE, of each specified occurrence when calling M3dmodDraw3d. Note that for a surface model, M_SAVE_FIT_INFO must be enabled.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_COLOR

Inquires the color with which to draw the graphic(s).

ValueDescription
(see M_COLOR)
Byte-encoded RGB valueSpecifies an encoded RGB value. To verify if the value is a byte-encoded RGB value, use theM_IS_RGB888 macro. To retrieve the R, G, and B bands, use the M_RGB888_R, M_RGB888_G, and M_RGB888_B macros.

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

M_DRAW_MODEL

Inquires whether and how to draw either the defined model or each specified occurrence when calling M3dmodDraw3d, depending on whether a find 3D model finder context or result buffer is specified.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_APPEARANCE

Inquires whether to draw the graphic(s) as a solid surface, wireframe, or points.

ValueDescription
(see M_APPEARANCE)

M_COLOR

Inquires the color with which to draw the graphic(s).

ValueDescription
(see M_COLOR)
Byte-encoded RGB valueSpecifies an encoded RGB value. To verify if the value is a byte-encoded RGB value, use theM_IS_RGB888 macro. To retrieve the R, G, and B bands, use the M_RGB888_R, M_RGB888_G, and M_RGB888_B macros.

M_OPACITY

Inquires the opacity with which to draw the graphic(s).

ValueDescription
(see M_OPACITY)

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

M_DRAW_RESERVED_POINTS

Inquires whether and how to draw the reserved points of each specified occurrence when calling M3dmodDraw3d.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_COLOR

Inquires the color with which to draw the graphic(s).

ValueDescription
(see M_COLOR)
Byte-encoded RGB valueSpecifies an encoded RGB value. To verify if the value is a byte-encoded RGB value, use theM_IS_RGB888 macro. To retrieve the R, G, and B bands, use the M_RGB888_R, M_RGB888_G, and M_RGB888_B macros.

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

M_GLOBAL_DRAW_SETTINGS

Inquires a global draw 3D model finder context setting.

M_PSEUDO_COLOR_OFFSET

Inquires the offset to apply to either the model's or the occurrence's index when drawing with M_PSEUDO_COLOR.

ValueDescription
(see M_PSEUDO_COLOR_OFFSET)

For inquiring a draw surface 3D model finder context

The following Operation and InquireType parameter settings can be specified for a draw surface 3D model finder context.


M_DRAW_AXES_POSITION

Inquires whether and how to draw the axes at either the model's or each specified occurrence's position when calling M3dmodDraw3d, depending on whether a find 3D model finder context or result buffer is specified. The axes are drawn at the model's reference axis origin/the model's reference axis origin transformed at each occurrence.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_LENGTH

Inquires the length of the graphic(s).

ValueDescription
(see M_LENGTH)

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

M_DRAW_BACKGROUND_POINTS

Inquires whether and how to draw the points that were considered part of the background during the search. Background points include those of objects that are too big or too small to be part of an occurrence of the model. The corresponding drawing operation is only supported if M_REMOVE_BACKGROUND was enabled.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_COLOR

Inquires the color with which to draw the graphic(s).

ValueDescription
(see M_COLOR)
Byte-encoded RGB valueSpecifies an encoded RGB value. To verify if the value is a byte-encoded RGB value, use theM_IS_RGB888 macro. To retrieve the R, G, and B bands, use the M_RGB888_R, M_RGB888_G, and M_RGB888_B macros.

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

M_DRAW_FLOOR_POINTS

Inquires whether and how to draw the points that were considered part of the floor during the search. Floor points are determined using the floor plane, defined using M3dmodCopy with M_FLOOR, and the floor removal direction and offset (M3dmodControl with M_REMOVE_FLOOR_DIRECTION and M_REMOVE_FLOOR_OFFSET). The corresponding drawing operation is only supported if M_REMOVE_FLOOR was enabled.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_COLOR

Inquires the color with which to draw the graphic(s).

ValueDescription
(see M_COLOR)
Byte-encoded RGB valueSpecifies an encoded RGB value. To verify if the value is a byte-encoded RGB value, use theM_IS_RGB888 macro. To retrieve the R, G, and B bands, use the M_RGB888_R, M_RGB888_G, and M_RGB888_B macros.

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

M_DRAW_MODEL_PREPROCESSED

Inquires whether and how to draw the preprocessed model that is in the specified find 3D model finder context. M3dmodPreprocess must be called before calling M3dmodDraw3d.

M_ACTIVE

Inquires whether to draw the graphic(s).

ValueDescription
(see M_ACTIVE)

M_COLOR

Inquires the color with which to draw the graphic(s).

ValueDescription
(see M_COLOR)
Byte-encoded RGB valueSpecifies an encoded RGB value. To verify if the value is a byte-encoded RGB value, use theM_IS_RGB888 macro. To retrieve the R, G, and B bands, use the M_RGB888_R, M_RGB888_G, and M_RGB888_B macros.

M_OPACITY

Inquires the opacity with which to draw the graphic(s).

ValueDescription
(see M_OPACITY)

M_THICKNESS

Inquires the thickness with which to draw the graphic(s).

ValueDescription
(see M_THICKNESS)

Combination Constants — For inquiring about the default value

Optional.

Usage: You can add one of the following values to the above-mentioned values to get information about the default value of an inquire type, regardless of the current value of the inquire type.

M_DEFAULT

Inquires the default value of the specified inquire type.

M_IS_SET_TO_DEFAULT

Inquires whether the specified inquire type is set to its default value.

ValueDescription
M_FALSESpecifies that the inquire type is not set to its default value.
M_TRUESpecifies that the inquire type is set to its default value.

Combination Constants — For inquiring whether an inquire type has a default value or whether it is supported

Optional.

Usage: You can add one of the following values to the above-mentioned values to determine whether an inquire type has a default value or whether it is supported.

M_HAS_DEFAULT

Inquires whether the specified inquire type has a default value.

ValueDescription
M_FALSESpecifies that the inquire type does not have a default value.
M_TRUESpecifies that the inquire type has a default value.

M_SUPPORTED

Inquires whether the specified inquire type is supported.

ValueDescription
M_FALSESpecifies that the inquire type is not supported.
M_TRUESpecifies that the inquire type is supported.

Combination Constants — For specifying the data type

Optional.

Usage: You can add one of the following values to the above-mentioned values to cast the requested information to the required data type.

M_TYPE_AIL_DOUBLE

Casts the requested information to an AIL_DOUBLE.

M_TYPE_AIL_FLOAT

Casts the requested information to an AIL_FLOAT.

M_TYPE_AIL_INT

Casts the requested information to an AIL_INT.

M_TYPE_AIL_INT32

Casts the requested information to an AIL_INT32.

M_TYPE_AIL_INT64

Casts the requested information to an AIL_INT64.

Return Value

Type: AIL_INT64

The returned value is the requested information, cast to an AIL_INT64. If the requested information does not fit into an AIL_INT64, this function will return M_NULLor truncate the information.

Copyright © 2026 Zebra Technologies.