Filters
Filter values by
  • Calibration context settings
  • Image buffer settings
  • 3d draw calibration context settings
| Customize Help
| Save Settings

McalControl



Function Map
Synopsis
Control the camera calibration information of a camera calibration context, calibrated image, or 3D draw calibration context.
Syntax
void McalControl(
MIL_ID ContextCalOrCalibratedMilObjectId, //in
MIL_INT64 ControlType, //in
MIL_DOUBLE ControlValue //in
)
Description

This function allows you to control a specified setting of a camera calibration context, calibrated image, or 3D draw calibration context.

If you control a camera calibration setting of a calibrated image with an M_VECTOR_AND_RASTER ROI, the raster information will be discarded, causing the ROI to become an M_VECTOR ROI. See MbufSetRegion() for more information.

Note that when using a C compiler (not a C++ or other compiler) in 64-bit mode, McalControl() internally calls the MIL_DOUBLE version of this function (McalControlDouble()). If you need to pass integer values, call the MIL_INT64 version of this function (McalControlInt64()).
Note that this function reference has not been updated for a MIL system added during a MIL update. Refer to the MIL system's release note to see which MIL system’s documentation you should use in its place and any possible differences.
Parameters
This function is not supported on the selected boards.
This function reference has not been updated for the selected MIL system. To show the content of this page, choose a second MIL system; refer to the MIL system's release note to see which MIL system’s documentation to choose and any possible differences.
Parameters
ContextCalOrCalibratedMilObjectId

Specifies the identifier of the camera calibration context, calibrated image, or 3D draw calibration context.

ControlType

Specifies the setting to change.

See the Parameter associations section for possible values that can be specified.

ControlValue

Specifies the setting's new value.

See the Parameter associations section for possible values that can be specified.

The following ControlType and ControlValue parameter settings can be specified for a camera calibration context:

function map For a camera calibration context
Click to summarize
ControlType
Description
ControlValue
Click to summarize M_CALIBRATION_PLANE

Sets the plane in which the calibration points are defined. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ABSOLUTE_COORDINATE_SYSTEM.

Click to summarize M_ABSOLUTE_COORDINATE_SYSTEM

Specifies that the calibration points are defined in the absolute coordinate system.

Click to summarize M_RELATIVE_COORDINATE_SYSTEM

Specifies that the calibration points are defined in the relative coordinate system.

Click to summarize M_FOREGROUND_VALUE

Sets whether the circles in a circle grid, used with McalGrid(), are lighter or darker than the background. INQ

(summarize)
Click to summarize M_DEFAULT

Determines the appropriate setting automatically.

Click to summarize M_FOREGROUND_BLACK

Specifies that the grid's circles are darker than the background.

Click to summarize M_FOREGROUND_WHITE

Specifies that the grid's circles are lighter than the background.

Click to summarize M_GRID_FIDUCIAL

Specifies that McalGrid() will look for a fiducial in the grid. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_NONE.

Click to summarize M_DATAMATRIX

Specifies that a Data Matrix code is used as a fiducial in a chessboard grid.

This control type is only used for camera calibrations performed using McalGrid() set to M_CHESSBOARD_GRID.

You must set McalControl() with M_GRID_PARTIAL to M_ENABLE and M_GRID_HINT_ANGLE_X, M_GRID_HINT_PIXEL_X, and M_GRID_HINT_PIXEL_Y to M_NONE. Setting M_GRID_FIDUCIAL to M_DATAMATRIX in any other circumstance will generate an error when calling McalGrid().

(summarize)
Click to summarize M_NONE

Specifies that there is no fiducial in the grid.

Click to summarize M_GRID_HINT_ANGLE_X

Specifies the hint angle used to establish the direction of the X-axis of the absolute (or relative) coordinate system, when calibrating with a partial chessboard grid.

To determine the X-axis of the absolute coordinate system when using a partial grid, McalGrid() first determines the two grid lines intersecting at the reference calibration point. The X- and Y-axes are always aligned with these grid lines. By default, the X-axis of the absolute coordinate system is the grid line intersecting the reference calibration point and closest to the image's X-axis, with the positive X-axis pointing right. To specify the other grid line and/or direction for the positive X-axis, you must specify a hint angle. When you specify a hint angle, the positive X-axis will be the grid line intersecting the reference calibration point and closest in angle to the hint angle.

This control type is only used for camera calibrations performed using McalGrid() set to M_CHESSBOARD_GRID, and McalControl() with M_GRID_PARTIAL set to M_ENABLE. Setting this control type in any other circumstance will generate an error when calling McalGrid(). INQ

(summarize)
Click to summarize M_NONE

Specifies that no hint angle is used. The positive X-axis is the right-pointing grid line closest to the horizontal.

This is the default value.

(summarize)
Click to summarize Value

Specifies the hint angle, measured counter-clockwise.

Click to summarize M_GRID_HINT_PIXEL_X

Specifies the X-coordinate of the hint pixel. The hint pixel is used to help McalGrid() determine the location of the grid's reference calibration point. Specify an X- and Y-coordinate for the hint pixel that is close to the grid's reference calibration point in the image.

For complete grids, the corner calibration point closest to the origin of the pixel coordinate system (top-left corner of the image) is the default reference calibration point. If your grid's reference calibration point is not near the origin of the pixel coordinate system (for instance, if the grid is rotated in the image), you must specify a hint pixel. For complete grids, the corner calibration point closest to the hint pixel will be the grid's reference calibration point.

For complete grids, given that the number of rows and columns are specified, there can be either 2 valid corners (for a rectangle grid) or 4 corners (for a square grid), so the approximate X-coordinate does not have to be very precise.

For partial chessboard grids (M_GRID_PARTIAL set to M_ENABLE), the calibration point closest to the center of the image is the default reference calibration point. If you need your grid's reference calibration point in another place, you must specify a hint pixel; the calibration point closest to the hint pixel will be the grid's reference calibration point.

This control type is only used for camera calibrations performed using McalGrid(). INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_NONE.

Click to summarize M_NONE

Specifies not to use a hint pixel.

When using a complete grid, the calibration point closest to the top-left corner of the image is used as the grid's reference calibration point.

When using a partial grid, the calibration point closest to the center of the image is used as the grid's reference calibration point.

Note that when you set M_GRID_HINT_PIXEL_X to M_NONE, you must also set M_GRID_HINT_PIXEL_Y to M_NONE.

(summarize)
Click to summarize Value

Specifies the X-coordinate of the hint pixel, in the pixel coordinate system.

Click to summarize M_GRID_HINT_PIXEL_Y

Specifies the Y-coordinate of the hint pixel. The hint pixel is used to help McalGrid() determine the location of the grid's reference calibration point. Specify an X- and Y-coordinate for the hint pixel that is close to the grid's reference calibration point in the image.

For complete grids, the corner calibration point closest to the origin of the pixel coordinate system (top-left corner of the image) is the default reference calibration point. If your grid's reference calibration point is not near the origin of the pixel coordinate system (for instance, if the grid is rotated in the image), you must specify a hint pixel. For complete grids, the corner calibration point closest to the hint pixel will be the grid's reference calibration point.

For complete grids, given that the number of rows and columns are specified, there can be either 2 valid corners (for a rectangle grid) or 4 corners (for a square grid), so the approximate Y-coordinate does not have to be very precise.

For partial chessboard grids (M_GRID_PARTIAL set to M_ENABLE), the calibration point closest to the center of the image is the default reference calibration point. If you need your grid's reference calibration point in another place, you must specify a hint pixel; the calibration point closest to the hint pixel will be the grid's reference calibration point.

This control type is only used for camera calibrations performed using McalGrid(). INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_NONE.

Click to summarize M_NONE

Specifies not to use a hint pixel.

When using a complete grid, the calibration point closest to the top-left corner of the image is used as the grid's reference calibration point.

When using a partial grid, the calibration point closest to the center of the image is used as the grid's reference calibration point.

Note that when you set M_GRID_HINT_PIXEL_Y to M_NONE, you must also set M_GRID_HINT_PIXEL_X to M_NONE.

(summarize)
Click to summarize Value

Specifies the Y-coordinate of the hint pixel, in the pixel coordinate system.

Click to summarize M_GRID_PARTIAL

Specifies whether McalGrid() can assume that the chessboard grid is complete. A complete grid is one the has the exact number of rows and columns specified when calling McalGrid(). INQ

(summarize)
Click to summarize M_DISABLE

Specifies that McalGrid() will only calibrate the camera setup when a complete grid is found in the image.

For complete grids, the grid's default reference calibration point is the calibration point at the corner of the grid, closest to the top-left corner of the image. To specify the calibration point at another corner of the grid, for instance to indicate that the physical grid is rotated, you must specify a hint pixel using M_GRID_HINT_PIXEL_X and M_GRID_HINT_PIXEL_Y.

This is the default value.

(summarize)
Click to summarize M_ENABLE

Specifies that McalGrid() can calibrate the camera setup when a partial grid is found in the image.

When you enable partial grids, the calibration point closest to the center of the image is the grid's default reference calibration point. You can specify an alternative reference calibration point by specifying a hint pixel using M_GRID_HINT_PIXEL_X and M_GRID_HINT_PIXEL_Y.

When you enable partial grids, you can specify how to handle potential outlying false calibration points using M_GRID_SHAPE.

When enabling partial grids, you must specify that the grid is a M_CHESSBOARD_GRID type grid when calling McalGrid(), which includes both chessboard grids and fiducial grids. Enabling partial grids with an M_CIRCLE_GRID type grid will result in an error.

(summarize)
Click to summarize M_GRID_SHAPE

Specifies how to handle potential outlying calibration points, using assumptions about the grid's shape in the image.

When M_GRID_PARTIAL is set to M_DISABLE, you must set M_GRID_SHAPE to M_RECTANGLE.

McalGrid() will try to find the outside edges of a partial chessboard grid if it is assumed to be rectangular. This affects whether potential calibration points are included in the camera calibration or are excluded as outliers. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_RECTANGLE.

Click to summarize M_ANY

Specifies to include all potential calibration points in the image; McalGrid() will not look for the boundary of the real-world grid. In this case, the shape of the partial grid is not bound.

Set this value when the partial grid in the image is not a rectangle. This can be either when the real-world grid is a rectangle, but is occluded by an object in the image, as in the image on the left, or when the real-world grid is not a rectangle, as in the image on the right.

With no fixed shape, no potential calibration point can be excluded as an outlier because it is not clear where the boundary of the partial grid is. This could lead to outlying false calibration points being included in the camera calibration, which would reduce the calibration's precision. In this case, it is highly recommended to check all calibration points extracted from the image using McalGrid() are valid, using McalDraw() with M_DRAW_IMAGE_POINTS.

(summarize)
Click to summarize M_RECTANGLE

Specifies to exclude potential calibration points in the image that McalGrid() determines are outside the boundaries of the partial grid. In this case, the shape of the partial grid is a rectangle.

Set this value if the real-world grid is rectangular and the image of the partial grid is not occluded by any objects in the image. Note that a partial grid is still considered rectangular if the boundary of the partial grid is obscured by the end of the image.

In this case, McalGrid() will look for the boundaries of the partial grid in the image. This allows the possibility of excluding false calibration points outside of the grid.

(summarize)
Click to summarize M_LINK_TOOL_AND_CAMERA

Creates a rigid link between the camera coordinate system and the tool coordinate system.

By default, a rigid link exists between the tool and camera coordinate systems such that moving one automatically moves the other accordingly. However, this can be broken using M_LINK_TOOL_AND_CAMERA set to M_DISABLE. You can then set the tool coordinate system to a known location without affecting the camera coordinate system (and the pixel-to-world mapping). After moving the tool coordinate system, you can then re-establish the link so that you move the camera coordinate system by moving the tool coordinate system. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ENABLE.

Click to summarize M_DISABLE

Specifies to remove the link between the two coordinate systems, allowing both to be moved independently.

Click to summarize M_ENABLE

Specifies to link the two coordinate systems, allowing both to be moved together.

Click to summarize M_LOCALIZATION_NB_ITERATIONS_MAX

Specifies the maximum number of iterations to attempt to fit the provided points when calculating the new position of the camera or relative coordinate system, when using McalList() and McalGrid() with M_DISPLACE_CAMERA_COORD or M_DISPLACE_RELATIVE_COORD respectively. If the specified number of iterations is large, the computation could take longer to run, but the algorithm will be more robust. If M_LOCALIZATION_NB_OUTLIERS_MAX is set to 0, only 1 iteration is required and no more will be performed. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies the default value; the default value is 250.

Click to summarize Value >= 1

Specifies the number of expected outliers. Only integer values are accepted.

(summarize)
Click to summarize M_LOCALIZATION_NB_OUTLIERS_MAX

Specifies the maximum number of possible outliers that can occur in the dataset used by McalList() or McalGrid() with M_DISPLACE_CAMERA_COORD or M_DISPLACE_RELATIVE_COORD. If the specified number of outliers is large, more iterations are required to determine which points provide the best solution; therefore, computation can take longer, but the function will be more robust to outliers. Also, the function could fail if the value of M_LOCALIZATION_NB_ITERATIONS_MAX is too low. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies the default value; the default value is 0.

Click to summarize Value >= 0

Specifies the number of expected outliers. Only integer values are accepted.

(summarize)
Click to summarize M_TOOL_POSITION_X

Sets the X-position of the tool coordinate system in the absolute coordinate system. The X-position is initialized to 0.0. INQ

(summarize)
Click to summarize Value

Specifies the X-coordinate, in world units.

Click to summarize M_TOOL_POSITION_Y

Sets the Y-position of the tool coordinate system in the absolute coordinate system. The Y-position is initialized to 0.0. INQ

(summarize)
Click to summarize Value

Specifies the Y-coordinate, in world units.

Click to summarize M_TOOL_POSITION_Z

Sets the Z-position of the tool coordinate system in the absolute coordinate system. The Z-position is initialized to 0.0.

When using the linear interpolation or perspective transformation camera calibration mode, M_TOOL_POSITION_Z must be set to M_DEFAULT. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies the default value; the default value is 0.0.

Click to summarize Value

Specifies the Z-coordinate, in world units.

Click to summarize M_TRANSFORM_CACHE

Sets whether to use a cache to accelerate the McalTransformImage() function. INQ

(summarize)
Click to summarize M_DISABLE

Specifies not to use a cache. Not using a cache saves memory but slows down subsequent calls to McalTransformImage().

(summarize)
Click to summarize M_ENABLE

Specifies to use a cache.

This is the default value.

(summarize)

The following ControlType and ControlValue parameter settings can be specified only for a 3D-based camera calibration context ( M_TSAI_BASED or M_3D_ROBOTICS):

function map For a 3D-based camera calibration context
Click to summarize
ControlType
Description
ControlValue
Click to summarize M_CCD_ASPECT_RATIO

Sets the width-to-height ratio of the individual elements of the CCD. If this value is not set and is required by the camera calibration mode, the ratio will default to 1.0. INQ

(summarize)
Click to summarize 1.0

Specifies that the width and height of the CCD element are equal.

This is the default value.

(summarize)
Click to summarize Value > 0.0

Specifies the value of the width of a CCD element divided by its height.

Click to summarize M_PRINCIPAL_POINT_X

Sets the X-coordinate of the intersection of the camera's optical axis and the image plane. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies half of the image's width, in pixels.

Click to summarize Value

Specifies the X-coordinate, in pixels. This only has an effect if M_PRINCIPAL_POINT_Y is not set to M_DEFAULT.

(summarize)
Click to summarize M_PRINCIPAL_POINT_Y

Sets the Y-coordinate of the intersection of the camera's optical axis and the image plane. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies half of the image's height, in pixels.

Click to summarize Value

Specifies the Y-coordinate, in pixels. This only has an effect if M_PRINCIPAL_POINT_X is not set to M_DEFAULT.

(summarize)

The following ControlType and ControlValue parameter settings can be specified for a calibrated image:

function map For a calibrated image
Click to summarize
ControlType
Description
ControlValue
Click to summarize M_CALIBRATION_CHILD_OFFSET_X

Sets the X-offset of a child buffer, relative to its highest order calibrated parent buffer. INQ

(summarize)
Click to summarize Value

Specifies the X-offset, relative to the child buffer's highest order calibrated parent buffer.

Click to summarize M_CALIBRATION_CHILD_OFFSET_Y

Sets the Y-offset of a child buffer, relative to its highest order calibrated parent buffer. INQ

(summarize)
Click to summarize Value

Specifies the Y-offset, relative to the child buffer's highest order calibrated parent buffer.

The following ControlType and ControlValue parameter settings can be specified for a calibrated image:

function map For a calibrated and corrected image
Click to summarize
ControlType
Description
ControlValue
Click to summarize M_GRAY_LEVEL_SIZE_Z

Sets the difference in height corresponding to a difference of one gray level in a fully-corrected depth map. INQ

(summarize)
Click to summarize M_INVALID_SCALE

Specifies that the image is not a depth map.

This is the default value.

(summarize)
Click to summarize Value != 0.0

Specifies the height, in world units, corresponding to a difference of one gray level.

Click to summarize M_WORLD_POS_Z

Sets the real-world Z-offset of a gray level of 0 in the corrected image, useful in depth maps. INQ

(summarize)
Click to summarize Value

Specifies the base height of a gray level of 0.

The default value is 0.0.

(summarize)

The following ControlType and ControlValue parameter settings can be specified for a 3D draw calibration context:

function map For a 3D draw calibration context
Click to summarize
ControlType
Description
ControlValue
Click to summarize M_DRAW_ABSOLUTE_COORDINATE_SYSTEM

Sets whether to draw the absolute coordinate system's axes. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ENABLE.

Click to summarize M_DISABLE

Specifies not to draw the absolute coordinate system's axes.

Click to summarize M_ENABLE

Specifies to draw the absolute coordinate system's axes.

Click to summarize M_DRAW_CAMERA_COORDINATE_SYSTEM

Sets whether to draw the camera coordinate system's axes. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ENABLE.

Click to summarize M_DISABLE

Specifies not to draw the camera coordinate system's axes.

Click to summarize M_ENABLE

Specifies to draw the camera coordinate system's axes.

Click to summarize M_DRAW_CAMERA_COORDINATE_SYSTEM_NAME

Sets the name to draw for the camera coordinate system; the initial value is "Camera". INQ

(summarize)
Click to summarize
M_PTR_TO_MIL_INT(
MIL_CONST_TEXT_PTR String
)

Casts the address of the string identifying the camera coordinate system's name, from a MIL_CONST_TEXT_PTR to a MIL_INT.

(summarize)
Parameters

This parameter specifies the string whose address to cast.

MIL_TEXT("String") 1

Specifies the name of the camera coordinate system.

Click to summarize M_DRAW_COORDINATE_SYSTEM_LENGTH

Sets the length at which to draw the specified coordinate system's axes. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies the default value; the default value is 50.0.

Click to summarize Value > 0.0

Specifies the length (in world units) at which to draw the axes of the specified coordinate system.

Click to summarize M_DRAW_FRUSTUM

Sets whether to draw the frustum of the camera's view. The frustum is the truncated pyramid of vision that originates at the camera's position and, when drawn, ends at the relative XY plane. When enabled, M_DRAW_FRUSTUM draws a wireframe frustum, using the color specified with M_DRAW_FRUSTUM_COLOR. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ENABLE.

Click to summarize M_DISABLE

Specifies not to draw the frustum.

Click to summarize M_ENABLE

Specifies to draw the frustum.

Click to summarize M_DRAW_FRUSTUM_COLOR

Sets the frustum's color. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_COLOR_YELLOW.

Click to summarize
M_RGB888(
MIL_INT Red,
MIL_INT Green,
MIL_INT Blue
)

Specifies an RGB value to draw in an 8-bit, 3-band buffer. The red, green, and blue values must be values between 0 and 255, inclusive.

(summarize)
Parameters

Specifies the red component, as a value between 0 and 255.

Specifies the green component, as a value between 0 and 255.

Specifies the blue component, as a value between 0 and 255.

Click to summarize M_COLOR_BLACK

Specifies the color black.

Click to summarize M_COLOR_BLUE

Specifies the color blue.

Click to summarize M_COLOR_BRIGHT_GRAY

Specifies the color bright gray.

Click to summarize M_COLOR_CYAN

Specifies the color cyan.

Click to summarize M_COLOR_DARK_BLUE

Specifies the color dark blue.

Click to summarize M_COLOR_DARK_CYAN

Specifies the color dark cyan.

Click to summarize M_COLOR_DARK_GREEN

Specifies the color dark green.

Click to summarize M_COLOR_DARK_MAGENTA

Specifies the color dark magenta.

Click to summarize M_COLOR_DARK_RED

Specifies the color dark red.

Click to summarize M_COLOR_DARK_YELLOW

Specifies the color dark yellow.

Click to summarize M_COLOR_GRAY

Specifies the color gray.

Click to summarize M_COLOR_GREEN

Specifies the color green.

Click to summarize M_COLOR_LIGHT_BLUE

Specifies the color light blue.

Click to summarize M_COLOR_LIGHT_GRAY

Specifies the color light gray.

Click to summarize M_COLOR_LIGHT_GREEN

Specifies the color light green.

Click to summarize M_COLOR_LIGHT_WHITE

Specifies the color light white.

Click to summarize M_COLOR_MAGENTA

Specifies the color magenta.

Click to summarize M_COLOR_RED

Specifies the color red.

Click to summarize M_COLOR_WHITE

Specifies the color white.

Click to summarize M_COLOR_YELLOW

Specifies the color yellow.

Click to summarize M_NO_COLOR

Specifies no color.

Click to summarize M_DRAW_RELATIVE_COORDINATE_SYSTEM

Sets whether to draw the relative coordinate system's axes. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ENABLE.

Click to summarize M_DISABLE

Specifies not to draw the relative coordinate system's axes.

Click to summarize M_ENABLE

Specifies to draw the relative coordinate system's axes.

Click to summarize M_DRAW_RELATIVE_COORDINATE_SYSTEM_NAME

Sets the name to draw for the relative coordinate system; the initial value is "Relative". INQ

(summarize)
Click to summarize
M_PTR_TO_MIL_INT(
MIL_CONST_TEXT_PTR String
)

Casts the address of the string identifying the relative coordinate system's name, from a MIL_CONST_TEXT_PTR to a MIL_INT.

(summarize)
Parameters

This parameter specifies the string whose address to cast.

MIL_TEXT("String") 1

Specifies the name of the relative coordinate system.

Click to summarize M_DRAW_RELATIVE_XY_PLANE

Sets whether to draw the relative XY plane. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ENABLE.

Click to summarize M_DISABLE

Specifies not to draw the relative XY plane.

Click to summarize M_ENABLE

Specifies to draw the relative XY plane.

Click to summarize M_DRAW_RELATIVE_XY_PLANE_COLOR_FILL

Sets the relative XY plane's fill color. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_AUTO_COLOR.

Click to summarize
M_RGB888(
MIL_INT Red,
MIL_INT Green,
MIL_INT Blue
)

Specifies an RGB value to draw in an 8-bit, 3-band buffer. The red, green, and blue values must be values between 0 and 255, inclusive.

(summarize)
Parameters

Specifies the red component, as a value between 0 and 255.

Specifies the green component, as a value between 0 and 255.

Specifies the blue component, as a value between 0 and 255.

Click to summarize M_AUTO_COLOR

Specifies either the color white or the texture image.

If a texture image is specified (using McalDraw3d() with RelXYPlaneTextureImageBufId), the texture image is drawn on the laser plane. Otherwise, the plane is drawn with M_COLOR_WHITE.

(summarize)
Click to summarize M_COLOR_BLACK

Specifies the color black.

Click to summarize M_COLOR_BLUE

Specifies the color blue.

Click to summarize M_COLOR_BRIGHT_GRAY

Specifies the color bright gray.

Click to summarize M_COLOR_CYAN

Specifies the color cyan.

Click to summarize M_COLOR_DARK_BLUE

Specifies the color dark blue.

Click to summarize M_COLOR_DARK_CYAN

Specifies the color dark cyan.

Click to summarize M_COLOR_DARK_GREEN

Specifies the color dark green.

Click to summarize M_COLOR_DARK_MAGENTA

Specifies the color dark magenta.

Click to summarize M_COLOR_DARK_RED

Specifies the color dark red.

Click to summarize M_COLOR_DARK_YELLOW

Specifies the color dark yellow.

Click to summarize M_COLOR_GRAY

Specifies the color gray.

Click to summarize M_COLOR_GREEN

Specifies the color green.

Click to summarize M_COLOR_LIGHT_BLUE

Specifies the color light blue.

Click to summarize M_COLOR_LIGHT_GRAY

Specifies the color light gray.

Click to summarize M_COLOR_LIGHT_GREEN

Specifies the color light green.

Click to summarize M_COLOR_LIGHT_WHITE

Specifies the color light white.

Click to summarize M_COLOR_MAGENTA

Specifies the color magenta.

Click to summarize M_COLOR_RED

Specifies the color red.

Click to summarize M_COLOR_WHITE

Specifies the color white.

Click to summarize M_COLOR_YELLOW

Specifies the color yellow.

Click to summarize M_NO_COLOR

Specifies no color.

Click to summarize M_TEXTURE_IMAGE

Specifies to use the image passed to McalDraw3d() with RelXYPlaneTextureImageBufId, when drawing the relative XY plane. The texture image is typically a 2D image of the 3D scene. For example, you can specify the image used for calibration. If no texture image is specified using McalDraw3d(), setting M_DRAW_RELATIVE_XY_PLANE_COLOR_FILL to M_TEXTURE_IMAGE will cause an error.

(summarize)
Click to summarize M_DRAW_RELATIVE_XY_PLANE_COLOR_OUTLINE

Sets the relative XY plane's outline color. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_COLOR_WHITE.

Click to summarize
M_RGB888(
MIL_INT Red,
MIL_INT Green,
MIL_INT Blue
)

Specifies an RGB value to draw in an 8-bit, 3-band buffer. The red, green, and blue values must be values between 0 and 255, inclusive.

(summarize)
Parameters

Specifies the red component, as a value between 0 and 255.

Specifies the green component, as a value between 0 and 255.

Specifies the blue component, as a value between 0 and 255.

Click to summarize M_COLOR_BLACK

Specifies the color black.

Click to summarize M_COLOR_BLUE

Specifies the color blue.

Click to summarize M_COLOR_BRIGHT_GRAY

Specifies the color bright gray.

Click to summarize M_COLOR_CYAN

Specifies the color cyan.

Click to summarize M_COLOR_DARK_BLUE

Specifies the color dark blue.

Click to summarize M_COLOR_DARK_CYAN

Specifies the color dark cyan.

Click to summarize M_COLOR_DARK_GREEN

Specifies the color dark green.

Click to summarize M_COLOR_DARK_MAGENTA

Specifies the color dark magenta.

Click to summarize M_COLOR_DARK_RED

Specifies the color dark red.

Click to summarize M_COLOR_DARK_YELLOW

Specifies the color dark yellow.

Click to summarize M_COLOR_GRAY

Specifies the color gray.

Click to summarize M_COLOR_GREEN

Specifies the color green.

Click to summarize M_COLOR_LIGHT_BLUE

Specifies the color light blue.

Click to summarize M_COLOR_LIGHT_GRAY

Specifies the color light gray.

Click to summarize M_COLOR_LIGHT_GREEN

Specifies the color light green.

Click to summarize M_COLOR_LIGHT_WHITE

Specifies the color light white.

Click to summarize M_COLOR_MAGENTA

Specifies the color magenta.

Click to summarize M_COLOR_RED

Specifies the color red.

Click to summarize M_COLOR_WHITE

Specifies the color white.

Click to summarize M_COLOR_YELLOW

Specifies the color yellow.

Click to summarize M_NO_COLOR

Specifies no color.

Click to summarize M_DRAW_RELATIVE_XY_PLANE_OPACITY

Sets the relative XY plane's opacity. INQ

(summarize)
Click to summarize M_DEFAULT

Specifies the default value; the default value is 20.0.

Click to summarize 0.0 <= Value <= 100.0

Specifies the relative XY plane's opacity.

Click to summarize M_DRAW_ROBOT_BASE_COORDINATE_SYSTEM

Sets whether to draw the robot base coordinate system's axes. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_ENABLE.

Click to summarize M_DISABLE

Specifies not to draw the robot base coordinate system's axes.

Click to summarize M_ENABLE

Specifies to draw the robot base coordinate system's axes.

Click to summarize M_DRAW_TOOL_COORDINATE_SYSTEM

Sets whether to draw the tool coordinate system's axes. INQ

(summarize)
Click to summarize M_DEFAULT

Same as M_DISABLE.

Click to summarize M_DISABLE

Specifies not to draw the tool coordinate system's axes.

Click to summarize M_ENABLE

Specifies to draw the tool coordinate system's axes.

1 If you are passing the value in a variable, don't enclose it in MIL_TEXT().

Type-specific versions of the function when using a C compiler under 64-bit
void McalControlInt64 (MIL_ID ContextCalOrCalibratedMilObjectId, MIL_INT64 ControlType, MIL_INT64 ControlValue)
Parameters

ContextCalOrCalibratedMilObjectId

See ContextCalOrCalibratedMilObjectId of the main function for a description.

ControlType

See ControlType of the main function for a description.

ControlValue

See ControlValue of the main function for a description.

void McalControlDouble (MIL_ID ContextCalOrCalibratedMilObjectId, MIL_INT64 ControlType, MIL_DOUBLE ControlValue)
Parameters

ContextCalOrCalibratedMilObjectId

See ContextCalOrCalibratedMilObjectId of the main function for a description.

ControlType

See ControlType of the main function for a description.

ControlValue

See ControlValue of the main function for a description.

Compilation information
Header Include mil.h.
Library Use mil.lib; milcal.lib.
DLL Requires mil.dll; milcal.dll.
NULL PROC CALIBRATION PLANE DEFAULT ABSOLUTE COORDINATE SYSTEM RELATIVE COORDINATE SYSTEM FOREGROUND VALUE DEFAULT FOREGROUND BLACK FOREGROUND WHITE GRID FIDUCIAL DEFAULT DATAMATRIX NONE GRID HINT ANGLE X NONE GRID HINT PIXEL X DEFAULT NONE GRID HINT PIXEL Y DEFAULT NONE GRID PARTIAL DISABLE ENABLE GRID SHAPE DEFAULT ANY RECTANGLE LINK TOOL AND CAMERA DEFAULT DISABLE ENABLE LOCALIZATION NB ITERATIONS MAX DEFAULT LOCALIZATION NB OUTLIERS MAX DEFAULT TOOL POSITION X TOOL POSITION Y TOOL POSITION Z DEFAULT TRANSFORM CACHE DISABLE ENABLE CCD ASPECT RATIO PRINCIPAL POINT X DEFAULT PRINCIPAL POINT Y DEFAULT CALIBRATION CHILD OFFSET X CALIBRATION CHILD OFFSET Y GRAY LEVEL SIZE Z INVALID SCALE WORLD POS Z DRAW ABSOLUTE COORDINATE SYSTEM DEFAULT DISABLE ENABLE DRAW CAMERA COORDINATE SYSTEM DEFAULT DISABLE ENABLE DRAW CAMERA COORDINATE SYSTEM NAME DRAW COORDINATE SYSTEM LENGTH DEFAULT DRAW FRUSTUM DEFAULT DISABLE ENABLE DRAW FRUSTUM COLOR DEFAULT COLOR BLACK COLOR BLUE COLOR BRIGHT GRAY COLOR CYAN COLOR DARK BLUE COLOR DARK CYAN COLOR DARK GREEN COLOR DARK MAGENTA COLOR DARK RED COLOR DARK YELLOW COLOR GRAY COLOR GREEN COLOR LIGHT BLUE COLOR LIGHT GRAY COLOR LIGHT GREEN COLOR LIGHT WHITE COLOR MAGENTA COLOR RED COLOR WHITE COLOR YELLOW NO COLOR DRAW RELATIVE COORDINATE SYSTEM DEFAULT DISABLE ENABLE DRAW RELATIVE COORDINATE SYSTEM NAME DRAW RELATIVE XY PLANE DEFAULT DISABLE ENABLE DRAW RELATIVE XY PLANE COLOR FILL DEFAULT AUTO COLOR COLOR BLACK COLOR BLUE COLOR BRIGHT GRAY COLOR CYAN COLOR DARK BLUE COLOR DARK CYAN COLOR DARK GREEN COLOR DARK MAGENTA COLOR DARK RED COLOR DARK YELLOW COLOR GRAY COLOR GREEN COLOR LIGHT BLUE COLOR LIGHT GRAY COLOR LIGHT GREEN COLOR LIGHT WHITE COLOR MAGENTA COLOR RED COLOR WHITE COLOR YELLOW NO COLOR TEXTURE IMAGE DRAW RELATIVE XY PLANE COLOR OUTLINE DEFAULT COLOR BLACK COLOR BLUE COLOR BRIGHT GRAY COLOR CYAN COLOR DARK BLUE COLOR DARK CYAN COLOR DARK GREEN COLOR DARK MAGENTA COLOR DARK RED COLOR DARK YELLOW COLOR GRAY COLOR GREEN COLOR LIGHT BLUE COLOR LIGHT GRAY COLOR LIGHT GREEN COLOR LIGHT WHITE COLOR MAGENTA COLOR RED COLOR WHITE COLOR YELLOW NO COLOR DRAW RELATIVE XY PLANE OPACITY DEFAULT DRAW ROBOT BASE COORDINATE SYSTEM DEFAULT DISABLE ENABLE DRAW TOOL COORDINATE SYSTEM DEFAULT DISABLE ENABLE TSAI BASED 3D ROBOTICS ENABLE NULL NULL TRUE