MIL_ID ContextGraId, | //in |
MIL_ID M3dmapId, | //in |
MIL_ID DstImageBufOrListGraId, | //in |
MIL_INT64 Operation, | //in |
MIL_INT LabelOrIndex, | //in |
MIL_INT64 ControlFlag | //in |
This function draws specific features of a 3D reconstruction geometry object, context, or result buffer.
Unlike most other functions that modify a MIL object, you can call this function concurrently from multiple threads on the same M_POINT_CLOUD_CONTAINER result buffer (M3dmapId) without using a M_MUTEX object. This is valid as long as the LabelOrIndex parameter of the concurrent calls is set to a different index.
Specifies the identifier of the graphics context to use. This parameter must be set to one of the following values:
For specifying the graphics
context
|
|||||||||||||||||||||||||||||||||||||||
Value | Description
|
||||||||||||||||||||||||||||||||||||||
M_DEFAULT |
Specifies that the default graphics context of the current MIL application is used. (more details...) |
||||||||||||||||||||||||||||||||||||||
MIL graphics context identifier |
Specifies a valid graphics context identifier, which you have allocated using MgraAlloc(). |
Specifies the identifier of a 3D reconstruction geometry object, context, or result buffer.
If you specify a 3D reconstruction geometry object, it must have been previously allocated on the required system using M3dmapAlloc() and must have been successfully defined using M3dmapSetGeometry().
If you specify a 3D reconstruction context, it must have been previously allocated on the required system using M3dmapAlloc() and must have been successfully calibrated using M3dmapCalibrate().
If you specify a 3D reconstruction result buffer, it must have been previously allocated on the required system using M3dmapAllocResult(), and M3dmapAddScan() must have been called at least once on the result buffer.
The 3D reconstruction geometry object, context, or result buffer must be allocated on the same system as the graphics context (ContextGraId). If it is not, an error will occur.
Specifies the identifier of the destination image buffer or graphics list in which to draw.
If you specify an image buffer, it must be 1-band, and in the case of M_DRAW_GEOMETRY, must be an 8-bit or 16-bit unsigned buffer and must be 3D-corrected. This image buffer must not have a region of interest (ROI) associated with it. Using an image buffer with an ROI will cause an error.
If you specify a graphics list, the graphics list must have been previously allocated using MgraAllocList(). A graphics list can only be used as a destination for certain operations.
For any operation on a 3D reconstruction context or result buffer, you can establish the minimum size with which to allocate the destination buffer, using M3dmapInquire() or M3dmapGetResult() with M_CAMERA_IMAGE_SIZE_X and M_CAMERA_IMAGE_SIZE_Y.
Specifies what to draw in the destination image buffer or graphics list.
The following operations can only draw in a destination image buffer.
For specifying the type of operation to
perform
|
|||||||||||||||||||||||||||||||||||||||
Value | Description
|
||||||||||||||||||||||||||||||||||||||
M_DRAW_GEOMETRY |
Generates the depth map representing the specified geometry object. (more details...) |
||||||||||||||||||||||||||||||||||||||
M_DRAW_PEAKS_LAST |
Draws the laser line that would have produced the most recent results stored in the 3D reconstruction result buffer using M3dmapAddScan(). (more details...) |
||||||||||||||||||||||||||||||||||||||
M_DRAW_REGION_INTERPOLATED |
Draws all regions (pixels) of the laser line image that were interpolated due to missing data (gaps) in the calibration laser lines. (more details...) |
||||||||||||||||||||||||||||||||||||||
M_DRAW_REGION_INVERTED |
Draws all regions (pixels) of the laser line image where an inversion occured. (more details...) |
||||||||||||||||||||||||||||||||||||||
M_DRAW_REGION_MISSING_DATA |
Draws all regions (pixels) of the laser line image where the laser line cannot appear, because of missing data (gaps) in the calibration laser lines that could not be accounted for by interpolation. (more details...) |
||||||||||||||||||||||||||||||||||||||
M_DRAW_REGION_UNCALIBRATED |
Draws all regions (pixels) of the laser line image where the laser line cannot appear, because they are outside the calibrated region. (more details...) |
||||||||||||||||||||||||||||||||||||||
M_DRAW_REGION_VALID |
Draws all regions (pixels) of the laser line image where the laser line can appear and be associated with a valid height. (more details...) |
The following operations can draw in a destination image buffer or a graphics list.
For specifying an operation that can draw
in a graphics list
|
|||||||||||||||||||||||||||||||||||||||
Value | Description
|
||||||||||||||||||||||||||||||||||||||
M_DRAW_CALIBRATION_LINES |
Draws all the fitted laser lines used for calibrating the 3D reconstruction setup. (more details...) |
||||||||||||||||||||||||||||||||||||||
M_DRAW_CALIBRATION_PEAKS |
Draws all the extracted laser lines used for calibrating the 3D reconstruction setup. (more details...) |
Header | Include mil.h. |
Library | Use mil.lib; mil3dmap.lib. |
DLL | Requires mil.dll; mil3dmap.dll. |