Filters
Filter values by
  • Calibration context settings
  • Image buffer settings
  • Digitizer settings
  • Fixturing offset object settings
  • Result buffer settings
  • 3d draw calibration context settings
| Customize Help
| Save Settings

McalInquire



Function Map
Synopsis
Inquire about a camera calibration context, a calibrated image, a calibrated result buffer, a fixturing offset object, a 3D draw calibration context, or about the camera calibration state of an image, digitizer, or result buffer.
Syntax
MIL_INT McalInquire(
MIL_ID ContextCalOrCalibratedMilObjectId, //in
MIL_INT64 InquireType, //in
void *UserVarPtr //out
)
Description

This function inquires about a setting of a camera calibration context, a calibrated image, a calibrated result buffer, a fixturing offset object, or a 3D draw calibration context. It can also be used to determine if a camera calibration context is associated with an image, digitizer, or result buffer, and whether or not an image has been corrected.

When working in M_3D_ROBOTICS camera calibration mode, the function returns information about the last camera calibration performed on that object. To inquire about previous camera calibration poses within the M_3D_ROBOTICS camera calibration context, you can use McalInquireSingle() with the Index parameter set to the required camera calibration pose.

To inquire the default value of a setting, add M_DEFAULT to the InquireType parameter.

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, image buffer, result buffer, digitizer, fixturing offset object, or 3D draw calibration context.

InquireType

Specifies the setting about which to inquire. The setting for InquireType depends on whether you are inquiring about a camera calibration context, image, result buffer, or digitizer.

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

UserVarPtr
Accepts the address of one of the following (see the Parameter associations section for specifics on which is expected):
  • array of type MIL_DOUBLE [optionally, in C++: a reference to a std::vector<MIL_DOUBLE> ]
  • array of type MIL_FLOAT [optionally, in C++: a reference to a std::vector<MIL_FLOAT> ]
  • array of type MIL_ID [optionally, in C++: a reference to a std::vector<MIL_ID> ]
  • array of type MIL_INT [optionally, in C++: a reference to a std::vector<MIL_INT> ]
  • array of type MIL_INT16 [optionally, in C++: a reference to a std::vector<MIL_INT16> ]
  • array of type MIL_INT32 [optionally, in C++: a reference to a std::vector<MIL_INT32> ]
  • array of type MIL_INT64 [optionally, in C++: a reference to a std::vector<MIL_INT64> ]
  • array of type MIL_TEXT_CHAR [optionally, in C++: a reference to a MIL_STRING]
  • MIL_DOUBLE
  • MIL_FLOAT
  • MIL_ID
  • MIL_INT
  • MIL_INT16
  • MIL_INT32
  • MIL_INT64

Specifies the address in which to return the value of the inquired setting. Since the McalInquire() function also returns the requested information, you can set this parameter to M_NULL.

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

For a camera calibration context, InquireType can be set to one of the following.

function map For a camera calibration context
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_CALIBRATION_INPUT_DATA +

Specifies the type of data that was used to perform the camera calibration.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_NULL

Specifies that no camera calibration was performed on the camera calibration context.

Click to summarize M_GRID

Specifies that the camera calibration was performed using a camera calibration grid (McalGrid()).

Click to summarize M_LIST

Specifies that the camera calibration was performed by explicitly specifying the correspondence between some pixels and their real-world coordinates (McalList()).

Click to summarize M_PARAMETRIC

Specifies that the camera calibration was performed using an explicitly specified translation, scale, and offset from the absolute world coordinate system (McalUniform()).

Click to summarize M_CALIBRATION_PLANE +

Inquires the plane in which the calibration points are defined. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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_CALIBRATION_STATUS +

Inquires the status of a camera calibration.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_CALIBRATED

Specifies that the camera calibration was successful.

Click to summarize M_CALIBRATING

Specifies that the last call to McalGrid() / McalList() was made with M_ACCUMULATE and the camera calibration was successful.

Click to summarize M_GRID_NOT_FOUND

Specifies that McalGrid() was unable to find an appropriate camera calibration grid in the provided image.

Click to summarize M_INVALID_CALIBRATION_POINTS

Specifies that the provided calibration points do not contain sufficient spatial information to perform a camera calibration.

Click to summarize M_MATHEMATICAL_EXCEPTION

Specifies that the calculation of the camera's parameters has failed.

Click to summarize M_NOT_INITIALIZED

Specifies that no camera calibration has been performed yet.

Click to summarize M_PLANE_ANGLE_TOO_SMALL

Specifies that the camera's optical axis is not sufficiently inclined. For full M_TSAI_BASED camera calibration, the camera's optical axis should be placed at least at a 30-degrees angle away from the axis perpendicular to the camera calibration plane.

(summarize)
Click to summarize M_TOO_MANY_OUTLIERS

Specifies that the calculation performed by McalGrid() or McalList() with M_DISPLACE_CAMERA_COORD or M_DISPLACE_RELATIVE_COORD has failed. There were too many possible outliers to correctly compute the new location of the coordinate system.

(summarize)
Click to summarize M_LINK_TOOL_AND_CAMERA +

Inquires whether a rigid link exists between the camera coordinate system and the tool coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires 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. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_LOCALIZATION_NB_OUTLIERS_MAX +

Inquires 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. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_OWNER_SYSTEM +

Inquires the identifier of the system on which the camera calibration context has been allocated. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_DEFAULT_HOST

Specifies the default Host system of the current MIL application.

Click to summarize MIL system identifier

Specifies a valid system identifier, previously allocated using MsysAlloc().

Click to summarize M_RELATIVE_ORIGIN_ANGLE +

Inquires the angle of rotation of the relative world coordinate system.

For 2D-based camera calibration contexts, the angle of rotation is of the relative coordinate system about the Z-axis of the absolute coordinate system. A positive angle corresponds to the rotation of the X-axis in the direction of the negative Y-axis.

For 3D-based camera calibration contexts (M_TSAI_BASED or M_3D_ROBOTICS), the axis of rotation is not necessarily the Z-axis. The returned value is equivalent to Param4Ptr of M_ROTATION_AXIS_ANGLE in McalGetCoordinateSystem().

The angle of rotation of the relative coordinate system is affected by transformations performed using McalSetCoordinateSystem() or McalRelativeOrigin() with AngularOffset. If you are using a 3D-based camera calibration context, it is recommended to use McalGetCoordinateSystem(). SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the angle of rotation, in degrees.

Click to summarize M_RELATIVE_ORIGIN_X +

Inquires the X-coordinate of the origin of the relative world coordinate system.

The X-coordinate of the origin of the relative coordinate system is affected by transformations performed using McalSetCoordinateSystem() or McalRelativeOrigin() with XOffset. If you are using a 3D-based camera calibration context, it is recommended to use McalSetCoordinateSystem(). SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the X-coordinate.

Click to summarize M_RELATIVE_ORIGIN_Y +

Inquires the Y-coordinate of the origin of the relative world coordinate system.

The Y-coordinate of the origin of the relative coordinate system is affected by transformations performed using McalSetCoordinateSystem() or McalRelativeOrigin() with YOffset. If you are using a 3D-based camera calibration context, it is recommended to use McalSetCoordinateSystem(). SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the Y-coordinate.

Click to summarize M_RELATIVE_ORIGIN_Z +

Inquires the Z-coordinate of the origin of the relative world coordinate system.

The Z-coordinate of the origin of the relative coordinate system is affected by transformations performed using McalSetCoordinateSystem() or McalRelativeOrigin() with ZOffset. If you are using a 3D-based camera calibration context, it is recommended to use McalSetCoordinateSystem(). SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the Z-coordinate.

Click to summarize M_TOOL_POSITION_X +

Inquires the X-position of the origin of the tool coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the X-coordinate, in world units.

Click to summarize M_TOOL_POSITION_Y +

Inquires the Y-position of the origin of the tool coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the Y-coordinate, in world units.

Click to summarize M_TOOL_POSITION_Z +

Inquires the Z-position of the origin of the tool coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the Z-coordinate, in world units.

Click to summarize M_TRANSFORM_CACHE +

Inquires whether a cache is used to accelerate McalTransformImage(). SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_DISABLE

Specifies not to use a cache. INFO

Click to summarize M_ENABLE

Specifies to use a cache.

For a camera calibration context that has been calibrated using McalGrid(), the InquireType parameter can be set to one of the following values.

function map For a camera calibration context calibrated using McalGrid()
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_COLUMN_NUMBER +

Inquires the number of columns in the camera calibration grid. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize Value >= 2

Specifies the number of columns.

Click to summarize M_COLUMN_SPACING +

Inquires the number of world units between columns. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value > 0.0

Specifies the spacing between columns.

Click to summarize M_FOREGROUND_VALUE +

Inquires whether the grid's circles are lighter or darker than the background. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires whether the partial chessboard grid has a fiducial. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_DATAMATRIX

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

Click to summarize M_NONE

Specifies that there is no fiducial in the grid.

Click to summarize M_GRID_HINT_ANGLE_X +

Inquires the hint angle used to help determine the orientation of the X-axis when calibrating your camera with a partial chessboard grid. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize M_NONE

Specifies that no hint angle is used. INFO

Click to summarize Value

Specifies the hint angle, measured counter-clockwise.

Click to summarize M_GRID_HINT_PIXEL_X +

Inquires the X-coordinate of the hint pixel used to help determine the grid's reference calibration point when calibrating your camera with a grid. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize M_NONE

Specifies not to use a hint pixel. INFO

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 +

Inquires the Y-coordinate of the hint pixel used to help determine the grid's reference calibration point when calibrating your camera with a grid. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize M_NONE

Specifies not to use a hint pixel. INFO

Click to summarize Value

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

Click to summarize M_GRID_ORIGIN_X +

Inquires the X-coordinate of the grid's reference calibration point, in the world coordinate system. The world coordinate system could be either the absolute coordinate system or the relative coordinate system, depending on which coordinate system was specified when you called McalGrid(). SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the X-coordinate.

Click to summarize M_GRID_ORIGIN_Y +

Inquires the Y-coordinate of the grid's reference calibration point, in the world coordinate system. The world coordinate system could be either the absolute coordinate system or the relative coordinate system, depending on which coordinate system was specified when you called McalGrid(). SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the Y-coordinate.

Click to summarize M_GRID_ORIGIN_Z +

Inquires the Z-coordinate of the grid's reference calibration point, in the world coordinate system. The world coordinate system could be either the absolute coordinate system or the relative coordinate system, depending on which coordinate system was specified when you called McalGrid(). SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the Z-coordinate.

Click to summarize M_GRID_PARTIAL +

Inquires whether the chessboard grid in the camera calibration image is allowed to be a partial grid. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_DISABLE

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

Click to summarize M_ENABLE

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

Click to summarize M_GRID_SHAPE +

Inquires whether the partial chessboard grid in the camera calibration image is assumed to be a rectangle. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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. INFO

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. INFO

Click to summarize M_GRID_TYPE +

Inquires the type of grid used to perform the camera calibration. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_CHESSBOARD_GRID

Specifies a chessboard grid. INFO

Click to summarize M_CIRCLE_GRID

Specifies a grid of circles. INFO

Click to summarize M_GRID_UNIT_SHORT_NAME +

Inquires the abbreviated name of the world units encoded in the Data Matrix code of the fiducial grid used to calibrate the camera calibration context.

Note that this information is not used by the Calibration module. No unit consistency is enforced and no unit conversion is performed.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_TEXT_CHAR [optionally, in C++: MIL_STRING ] MORE
Click to summarize MIL_TEXT("cm") 1

Specifies the grid units are centimeters.

Click to summarize MIL_TEXT("ft") 1

Specifies the grid units are feet.

Click to summarize MIL_TEXT("in") 1

Specifies the grid units are inches.

Click to summarize MIL_TEXT("km") 1

Specifies the grid units are kilometers.

Click to summarize MIL_TEXT("m") 1

Specifies the grid units are meters.

Click to summarize MIL_TEXT("miles") 1

Specifies the grid units are miles.

Click to summarize MIL_TEXT("mils") 1

Specifies the grid units are mils.

Click to summarize MIL_TEXT("mm") 1

Specifies the grid units are millimeters.

Click to summarize MIL_TEXT("um") 1

Specifies the grid units are micrometers.

Note that micrometers are abbreviated as "um" to ensure easy printing in a non-unicode environment.

(summarize)
Click to summarize MIL_TEXT("units") 1

Specifies the grid units are unknown.

Click to summarize M_GRID_UNITS +

Inquires the world units that were encoded in the Data Matrix code of the fiducial grid used to calibrate the camera calibration context.

Note that this information is not used by the Calibration module. No unit consistency is enforced and no unit conversion is performed.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_CENTIMETERS

Specifies that the grid units are measured in centimeters.

Click to summarize M_FEET

Specifies that the grid units are measured in feet.

Click to summarize M_INCHES

Specifies that the grid units are measured in inches.

Click to summarize M_KILOMETERS

Specifies that the grid units are measured in kilometers.

Click to summarize M_METERS

Specifies that the grid units are measured in meters.

Click to summarize M_MICROMETERS

Specifies that the grid units are measured in micrometers.

Click to summarize M_MILES

Specifies that the grid units are measured in miles.

Click to summarize M_MILLIMETERS

Specifies that the grid units are measured in millimeters.

Click to summarize M_MILS

Specifies that the grid units are measured in mils.

Click to summarize M_UNKNOWN

Specifies that grid units are measured in an unknown unit.

If your calibration grid does not have a fiducial, the grid units are unknown.

(summarize)
Click to summarize M_ROW_NUMBER +

Inquires the number of rows in the camera calibration grid. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize Value >= 2

Specifies the number of rows.

Click to summarize M_ROW_SPACING +

Inquires the spacing between rows in the camera calibration grid. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value > 0.0

Specifies the spacing between rows, in world units.

1 If the value was passed in a variable, it won't be returned enclosed in MIL_TEXT().

For a camera calibration context that has been calibrated using McalGrid() or McalList(), the InquireType parameter can be set to one of the following values.

function map For a camera calibration context calibrated using McalGrid() or McalList()
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_AVERAGE_PIXEL_ERROR +

Inquires the average camera calibration error in the pixel coordinate system. You can only inquire this value for a successfully calibrated camera calibration context.

This is the average distance in the pixel coordinate system between the initial calibration points and their projected points in an image.

When working in M_3D_ROBOTICS camera calibration mode, this only returns the average camera calibration error of the last camera calibration call. To return an average camera calibration error for all camera calibration grids used, it is recommended to use M_GLOBAL_AVERAGE_PIXEL_ERROR instead.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value >= 0.0

Specifies the average camera calibration error, in pixels.

Click to summarize M_AVERAGE_WORLD_ERROR +

Inquires the average camera calibration error in the absolute coordinate system. You can only inquire this value for a successfully calibrated camera calibration context.

This is the average distance in the absolute coordinate system between the initial calibration points and their projected points in an image.

When working in M_3D_ROBOTICS camera calibration mode, this only returns the average camera calibration error of the last camera calibration call. To return an average camera calibration error for all camera calibration grids used, it is recommended to use M_GLOBAL_AVERAGE_WORLD_ERROR instead.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value >= 0.0

Specifies the average camera calibration error, in world units.

Click to summarize M_CALIBRATION_IMAGE_POINTS_X +

Inquires the X-pixel coordinate of the calibration points.

If you used McalGrid() to calibrate your camera setup, the calibration points' pixel coordinates are determined by the pixel positions of the centers of the circles in a circle grid or the intersections of four squares/rectangles in a chessboard grid.

If you used McalList() to calibrate your camera setup, you explicitly set the calibration points' pixel coordinates with the PixCoordXArrayPtr parameter. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_DOUBLE [optionally, in C++: a reference to a std::vector<MIL_DOUBLE> ] MORE
Click to summarize Value

Specifies the X-coordinate, in pixels.

Click to summarize M_CALIBRATION_IMAGE_POINTS_Y +

Inquires the Y-pixel coordinate of the calibration points.

If you used McalGrid() to calibrate your camera setup, the calibration points' pixel coordinates are determined by the pixel positions of the centers of the circles in a circle grid or the intersections of four squares/rectangles in a chessboard grid.

If you used McalList() to calibrate your camera setup, you explicitly set the calibration points' pixel coordinates with the PixCoordYArrayPtr parameter. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_DOUBLE [optionally, in C++: a reference to a std::vector<MIL_DOUBLE> ] MORE
Click to summarize Value

Specifies the Y-coordinate, in pixels.

Click to summarize M_CALIBRATION_WORLD_POINTS_X +

Inquires the X-world coordinate of the calibration points. The coordinate is expressed in world units of the camera calibration plane (M_CALIBRATION_PLANE).

If you used McalGrid() to calibrate your camera setup, the calibration points are computed from the parameters GridOffsetX, ColumnNumber, and ColumnSpacing.

If you used McalList() to calibrate your camera setup, the world coordinates of the calibration points are those you set with the WorldCoordXArrayPtr parameter. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_DOUBLE [optionally, in C++: a reference to a std::vector<MIL_DOUBLE> ] MORE
Click to summarize Value

Specifies the X-coordinate, in real-world units of the camera calibration plane (M_CALIBRATION_PLANE).

Click to summarize M_CALIBRATION_WORLD_POINTS_Y +

Inquires the Y-world coordinate of the calibration points. The coordinate is expressed in world units of the camera calibration plane (M_CALIBRATION_PLANE).

If you used McalGrid() to calibrate your camera setup, the calibration points are computed from the parameters GridOffsetY, RowNumber, and RowSpacing.

If you used McalList() to calibrate your camera setup, the world coordinates of the calibration points are those you set with the WorldCoordYArrayPtr parameter. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_DOUBLE [optionally, in C++: a reference to a std::vector<MIL_DOUBLE> ] MORE
Click to summarize Value

Specifies the Y-coordinate, in real-world units of the camera calibration plane (M_CALIBRATION_PLANE).

Click to summarize M_CALIBRATION_WORLD_POINTS_Z +

Inquires the Z-world coordinate of the calibration points that are based on explicitly specified values. The computed calibration points are expressed in world units of the camera calibration plane (M_CALIBRATION_PLANE). If this value is inquired for 2D-based camera calibration contexts, the specified array will be filled with 0.0 values.

If you used McalList() to calibrate your camera setup, you explicitly set the calibration points' pixel coordinates with the WorldCoordZArrayPtr parameter.

If you used McalGrid() to calibrate your camera setup, you explicitly set the Z-coordinate of all the calibration points with the GridOffsetZ parameter. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_DOUBLE [optionally, in C++: a reference to a std::vector<MIL_DOUBLE> ] MORE
Click to summarize Value

Specifies the Z-coordinate, in real-world units of the camera calibration plane (M_CALIBRATION_PLANE).

Click to summarize M_GLOBAL_AVERAGE_PIXEL_ERROR +

Inquires the average camera calibration error, in pixels, for all the points used in all successive calls to McalGrid() and McalList(). You can only inquire this value for a successfully calibrated M_3D_ROBOTICS camera calibration context.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value >= 0.0

Specifies the average camera calibration error, in pixels.

Click to summarize M_GLOBAL_AVERAGE_WORLD_ERROR +

Inquires the average camera calibration error, in world units, for all the points used in all successive calls to McalGrid() and McalList(). You can only inquire this value for a successfully calibrated M_3D_ROBOTICS camera calibration context.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value >= 0.0

Specifies the average camera calibration error, in world units.

Click to summarize M_GLOBAL_MAXIMUM_PIXEL_ERROR +

Inquires the maximum camera calibration error, in pixels, for all the points used in all successive calls to McalGrid() and McalList(). You can only inquire this value for a successfully calibrated M_3D_ROBOTICS camera calibration context.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value >= 0.0

Specifies the maximum camera calibration error, in pixels.

Click to summarize M_GLOBAL_MAXIMUM_WORLD_ERROR +

Inquires the maximum camera calibration error, in world units, for all the points used in all successive calls to McalGrid() and McalList(). You can only inquire this value for a successfully calibrated M_3D_ROBOTICS camera calibration context.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value >= 0.0

Specifies the maximum camera calibration error, in world units.

Click to summarize M_MAXIMUM_PIXEL_ERROR +

Inquires the maximum camera calibration error, in pixels. You can only inquire this value for a successfully calibrated camera calibration context.

For an M_3D_ROBOTICS camera calibration context, this only returns the average camera calibration error of the last camera calibration call. To return an average camera calibration error for all camera calibration grids used, it is recommended to use M_GLOBAL_MAXIMUM_PIXEL_ERROR instead.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value >= 0.0

Specifies the maximum camera calibration error, in pixels.

Click to summarize M_MAXIMUM_WORLD_ERROR +

Inquires the maximum camera calibration error, in world units. You can only inquire this value for a successfully calibrated camera calibration context.

For an M_3D_ROBOTICS camera calibration context, this only returns the average camera calibration error of the last camera calibration call. To return an average camera calibration error for all camera calibration grids used, it is recommended to use M_GLOBAL_MAXIMUM_WORLD_ERROR instead.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value >= 0.0

Specifies the maximum camera calibration error, in world units.

Click to summarize M_NUMBER_OF_CALIBRATION_POINTS +

Inquires the number of calibration points found by McalGrid() or passed to McalList().

If you used McalList() to calibrate your camera setup, you can explicitly set the number of calibration points with the NumPoint parameter.

If you used McalGrid() to calibrate your camera setup, the number of calibration points is determined by the number of columns and rows in your grid. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize Value >= 0

Specifies the number of calibration points.

Click to summarize M_NUMBER_OF_CALIBRATION_POSES +

Inquires the number of calls made to McalGrid() or McalList() with the same ContextCalOrCalibratedMilObjectId parameter passed. You can only inquire this value for a successfully calibrated M_3D_ROBOTICS camera calibration context.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize Value >= 0

Specifies the number of camera calibration poses.

You can add the following value to the above-mentioned values to determine the required array size (number of elements) to store the returned values.

function map For determining the required array size (number of elements) to store the returned values
Click to summarizeInquireType combination value Description
UserVarPtr
- Possible values returned
Click to summarize M_NB_ELEMENTS

Retrieves the required array size (number of elements) to store the returned values.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE

For a camera calibration context that has been calibrated using McalGrid(), McalList(), or McalUniform(), the InquireType parameter can be set to one of the following values.

function map For a camera calibration context calibrated using McalGrid(), McalList(), or McalUniform()
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_ASPECT_RATIO +

Inquires the average aspect ratio. The ratio is the average pixel width, divided by average pixel height, calculated with world units.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize M_INVALID_SCALE

Specifies that camera calibration was not successful. This value can also be returned if the camera is positioned and oriented in such a way that all points in the image plane are invalid.

(summarize)
Click to summarize Value > 0.0

Specifies the average aspect ratio.

For a 3D-based camera calibration context ( M_TSAI_BASED or M_3D_ROBOTICS), the InquireType parameter can be set to one of the following values.

function map For a 3D-based camera calibration context
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_CCD_ASPECT_RATIO +

Inquires the width to height ratio of the individual elements of the CCD. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize 1.0

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

Click to summarize Value > 0.0

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

Click to summarize M_DISTORTION_RADIAL_1 +

Inquires the value of the second order radial distortion coefficient used in the camera calibration algorithm. Radial distortion refers to image distortions caused by the camera's lens.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the value of the second order radial distortion coefficient.

Click to summarize M_FOCAL_LENGTH +

Inquires the effective focal length of the pinhole camera model used in the camera calibration.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the effective focal length of the pinhole camera model, expressed in horizontal pixels.

Click to summarize M_PRINCIPAL_POINT_X +

Inquires the X-coordinate of the intersection of the camera's optical axis and the image plane. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize M_DEFAULT

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

Click to summarize Value

Specifies the X-coordinate, in pixels. INFO

Click to summarize M_PRINCIPAL_POINT_Y +

Inquires the Y-coordinate of the intersection of the camera's optical axis and the image plane. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize M_DEFAULT

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

Click to summarize Value

Specifies the Y-coordinate, in pixels. INFO

For any image, result buffer, or digitizer, the InquireType parameter can be set to the following value.

function map For any image, digitizer, or result buffer
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_ASSOCIATED_CALIBRATION +

Inquires the identifier of the associated camera calibration context.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_NULL

Specifies that there is no camera calibration context associated with the image or digitizer.

Click to summarize M_DEFAULT_UNIFORM_CALIBRATION

Specifies that the image was calibrated using McalUniform().

Click to summarize MIL Calibration object identifier

Specifies the camera calibration context that is associated with the image or digitizer.

For a camera calibration context, image, or result buffer, the InquireType parameter can be set to one of the following values. Note that a result buffer has exactly the same calibration information as the calibration information of the image used to obtain the results, if the result buffer's MIL module supports returning results in real-world units; so when you inquire about a result buffer, the information returned is about the image on which the results were obtained.

function map For a camera calibration context, image, or result buffer
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_CALIBRATION_CATEGORY +

Inquires whether the specified MIL object is or is associated with a camera calibration context, and whether the associated context was allocated with a 2D-based or 3D-based calibration mode. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_NULL

Specifies the MIL object is not associated with a camera calibration context.

Inquiring the camera calibration category of a camera calibration context never returns M_NULL.

(summarize)
Click to summarize M_2D_CALIBRATION

Specifies that the camera calibration context was allocated with a 2D-based camera calibration mode, such as M_LINEAR_INTERPOLATION.

When the specified MIL object is an image with a constant pixel size, such as corrected images and depth maps, M_2D_CALIBRATION is returned, regardless of the calibration mode of the camera calibration context with which the object is associated.

(summarize)
Click to summarize M_3D_CALIBRATION

Specifies that the camera calibration context was allocated with a 3D-based camera calibration mode, such as M_3D_ROBOTICS.

Click to summarize M_CALIBRATION_MODE +

Inquires the camera calibration mode of the associated camera calibration of the specified MIL object. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_NULL

Specifies the MIL object is not associated with a camera calibration.

Inquiring the camera calibration mode of a camera calibration context never returns M_NULL.

(summarize)
Click to summarize M_3D_ROBOTICS

Specifies a 3D camera calibration mode for a camera setup with the camera mounted on a robot arm at an unknown position. INFO

Click to summarize M_LINEAR_INTERPOLATION

Specifies piecewise linear interpolation mode.

Click to summarize M_PERSPECTIVE_TRANSFORMATION

Specifies perspective transformation mode.

Click to summarize M_TSAI_BASED

Specifies a 3D camera calibration mode based on the technique developed by Roger Y Tsai. INFO

Click to summarize M_UNIFORM_TRANSFORMATION

Specifies uniform transformation mode.

Images with a constant pixel size (including corrected images and depth maps) are always uniform, even if the camera calibration mode of their associated camera calibration is not.

(summarize)
Click to summarize M_CONSTANT_PIXEL_SIZE +

Inquires whether the image has a constant pixel size.

When inquiring a camera calibration context, M_CONSTANT_PIXEL_SIZE will always return M_FALSE.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_FALSE

Specifies that the image does not have a constant pixel size, or that you are inquiring a camera calibration context. The size of each pixel depends on the camera calibration context associated with the image.

(summarize)
Click to summarize M_TRUE

Specifies that the image has a constant pixel size. Note, however, that pixels are not necessarily square; they can be rectangular and might be rotated.

(summarize)
Click to summarize M_CORRECTION_STATE +

Inquires whether the image has been physically corrected. Physically corrected images have square pixels with a constant size and no rotation between the pixel and absolute coordinate systems. Images can be corrected using McalTransformImage() with M_FULL_CORRECTION.

When inquiring a camera calibration context, M_CORRECTION_STATE will always return M_FALSE.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_FALSE

Specifies that the image has been neither corrected nor calibrated, or that you are inquiring a camera calibration context.

Click to summarize M_TRUE

Specifies that the image has been corrected.

Click to summarize M_DEPTH_MAP +

Inquires whether the MIL object is a fully corrected depth map. A fully corrected buffer is a calibrated buffer with a constant pixel size and with a valid Z-scale. Note that the size of the pixels is not necessarily square.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_FALSE

Specifies that the MIL object is not a fully corrected depth map.

Inquiring M_DEPTH_MAP on a camera calibration context returns M_FALSE.

(summarize)
Click to summarize M_TRUE

Specifies that the image is a fully corrected depth map.

Note that when M_DEPTH_MAP returns M_TRUE, M_CONSTANT_PIXEL_SIZE also returns M_TRUE and M_GRAY_LEVEL_SIZE_Z will not return M_INVALID_SCALE.

(summarize)
Click to summarize M_Y_AXIS_DIRECTION +

Inquires the direction the Y-axis of the absolute coordinate system is oriented with respect to its positive X-axis.

If you used McalList() to calibrate your camera setup, the Y-axis orientation was determined by the calibration points that you specified. For more information, see the Calibrating using calibration points from a list section of Chapter 26: Calibrating your camera setup.

If you used McalGrid() to calibrate your camera setup, the explicitly specified Y-axis orientation is used.

Note that this constant does not support images without an associated camera calibration context. An uncalibrated image will return an error. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize M_Y_AXIS_CLOCKWISE

Specifies that the positive Y-axis is oriented 90° clockwise with respect to the positive X-axis.

Click to summarize M_Y_AXIS_COUNTER_CLOCKWISE

Specifies that the positive Y-axis is oriented 90° counter-clockwise with respect to the positive X-axis.

For an image or result buffer that is calibrated, the InquireType parameter can be set to one of the following values. Note that a result buffer has exactly the same calibration information as the calibration information of the image used to obtain the results, if the result buffer's MIL module supports returning results in real-world units; so when you inquire about a result buffer, the information returned is about the image on which the results were obtained.

function map For a calibrated image or result buffer
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_CALIBRATION_CHILD_OFFSET_X +

Inquires the X-offset of a child buffer relative to the highest calibrated parent image that was originally associated with the camera calibration context. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires the Y-offset of a child buffer relative to the highest calibrated parent image that was originally associated with the camera calibration context. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
Click to summarize Value

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

The following formulas give the relationship between coordinates in pixel units and world units when an image or result buffer is calibrated and has a constant pixel size:

If an image or result buffer is calibrated and has a constant pixel-size, the InquireType parameter can be set to one of the following values.

function map For a calibrated image or result buffer, with a constant pixel size
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_GRAY_LEVEL_SIZE_Z +

Inquires the step, in world units, along the Z-axis of the relative coordinate system, represented by one gray level. Since the Z-axis is pointing downwards, positive M_GRAY_LEVEL_SIZE_Z values mean that lower (darker) pixel values represent higher world points (top-black); negative M_GRAY_LEVEL_SIZE_Z values mean that higher (brighter) pixel values represent higher world points (top-white).

This inquire type is only useful when inquiring about an image buffer that contains a depth map. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize M_INVALID_SCALE

Specifies that the image is not a depth map.

Click to summarize Value != 0.0

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

Click to summarize M_PIXEL_ROTATION +

Inquires the angle of the X-axis of the pixel coordinate system measured in the relative world coordinate system, starting from the positive X-axis of the relative world coordinate system and going towards its positive Y-axis.

This value corresponds to R in the above formulas. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the angle, in degrees.

Click to summarize M_PIXEL_SIZE_X +

Inquires the width of the pixels in the corrected image.

You can multiply a measure in pixels, along the X-axis, by M_PIXEL_SIZE_X to get the measure in world units. If there is rotation between the relative world coordinate system and the pixel coordinate system, this distance won't be along the X-axis of the relative world coordinate system.

This value corresponds to Sx in the above formulas. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value > 0.0

Specifies the width, in world units/pixel.

Click to summarize M_PIXEL_SIZE_Y +

Inquires the height of the pixels in the corrected image.

You can multiply a measure in pixels, along the Y-axis, by M_PIXEL_SIZE_Y to get the measure in world units. If there is rotation between the relative world coordinate system and the pixel coordinate system, this distance won't be along the Y-axis of the relative world coordinate system.

This value corresponds to Sy in the above formulas. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value > 0.0

Specifies the height, in world units/pixel.

Click to summarize M_WORLD_POS_X +

Inquires the X-coordinate of the center of the top-left pixel in the corrected image. This value corresponds to Tx in the above formulas. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the X-coordinate, expressed in the relative world coordinate system.

Click to summarize M_WORLD_POS_Y +

Inquires the Y-coordinate of the center of the top-left pixel in the corrected image. This value corresponds to Ty in the above formulas. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the Y-coordinate, expressed in the relative world coordinate system.

Click to summarize M_WORLD_POS_Z +

Inquires the Z-coordinate of gray level 0 in the corrected image. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the base height of a gray level of 0, expressed in the relative world coordinate system .

You can add the following value to the above-mentioned values to determine the default value of an inquire type, regardless of the current value of the inquire type.

function map For inquiring the default value
Click to summarizeInquireType Description
UserVarPtr
- Possible values returned
Click to summarize M_DEFAULT

Inquires the default value of the specified inquire type.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE

For a fixturing offset object, the InquireType parameter can be set to one of the following values.

function map For a fixturing offset object
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_ANGLE +

Inquires the angular offset to apply to the reference location when setting the relative world coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the angular offset.

Click to summarize M_POSITION_X +

Inquires the X-offset to apply to the reference location when setting the relative world coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the X-offset.

Click to summarize M_POSITION_Y +

Inquires the Y-offset to apply to the reference location when setting the relative world coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize Value

Specifies the Y-offset.

For a 3D draw calibration context, InquireType can be set to one of the following.

function map For a 3D draw calibration context
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_DRAW_ABSOLUTE_COORDINATE_SYSTEM +

Inquires whether to draw the absolute coordinate system's axes. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires whether to draw the camera coordinate system's axes. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires the name to draw for the camera coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_TEXT_CHAR [optionally, in C++: MIL_STRING ] MORE
Click to summarize M_DRAW_COORDINATE_SYSTEM_LENGTH +

Inquires the length at which to draw the specified coordinate system's axes. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
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 +

Inquires whether to draw the frustum. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires the frustum's color. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires whether to draw the relative coordinate system's axes. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires the name to draw for the relative coordinate system. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_TEXT_CHAR [optionally, in C++: MIL_STRING ] MORE
Click to summarize M_DRAW_RELATIVE_XY_PLANE +

Inquires whether to draw the relative XY plane. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires the relative XY plane's fill color. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires the relative XY plane's outline color. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires the relative XY plane's opacity. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE
Click to summarize 0.0 <= Value <= 100.0

Specifies the relative XY plane's opacity.

Click to summarize M_DRAW_ROBOT_BASE_COORDINATE_SYSTEM +

Inquires whether to draw the robot base coordinate system's axes. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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 +

Inquires whether to draw the tool coordinate system's axes. SET

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE
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.

You can add the following value to the above-mentioned values to get the string's length.

function map For getting the string size
Click to summarize
InquireType
Description
UserVarPtr
- Possible values returned
Click to summarize M_STRING_SIZE +

Retrieves the length of the string, including the terminating null character ("\0").

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: address of a MIL_DOUBLE MORE

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

Note: In C++, when using a standard vector (std::vector) instead of an array, the values listed in this combination table must not be used. If you need to use a specific data type, instantiate the vector with the necessary data type.

function map For specifying the data type
Click to summarizeInquireType Description
UserVarPtr
- Possible values returned
Click to summarize M_TYPE_MIL_DOUBLE

Casts the requested information to a MIL_DOUBLE.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_DOUBLE [optionally, in C++: a reference to a std::vector<MIL_DOUBLE> ]  |  address of a MIL_DOUBLE MORE
Click to summarize M_TYPE_MIL_FLOAT

Casts the requested information to a MIL_FLOAT.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_FLOAT [optionally, in C++: a reference to a std::vector<MIL_FLOAT> ]  |  address of a MIL_FLOAT MORE
Click to summarize M_TYPE_MIL_ID

Casts the requested information to a MIL_ID.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_ID [optionally, in C++: a reference to a std::vector<MIL_ID> ]  |  address of a MIL_ID MORE
Click to summarize M_TYPE_MIL_INT

Casts the requested information to a MIL_INT.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_INT [optionally, in C++: a reference to a std::vector<MIL_INT> ]  |  address of a MIL_INT MORE
Click to summarize M_TYPE_MIL_INT16

Casts the requested results to a MIL_INT16.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_INT16 [optionally, in C++: a reference to a std::vector<MIL_INT16> ]  |  address of a MIL_INT16 MORE
Click to summarize M_TYPE_MIL_INT32

Casts the requested information to a MIL_INT32.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_INT32 [optionally, in C++: a reference to a std::vector<MIL_INT32> ]  |  address of a MIL_INT32 MORE
Click to summarize M_TYPE_MIL_INT64

Casts the requested information to a MIL_INT64.

(summarize)
Expand data type infoCollapse data type info UserVarPtr extra info
Data type info: Data type: array of type MIL_INT64 [optionally, in C++: a reference to a std::vector<MIL_INT64> ]  |  address of a MIL_INT64 MORE
Return value
The returned value is the requested information, cast to a MIL_INT. If the requested information does not fit into a MIL_INT, this function will return M_NULL or truncate the information.
Compilation information
Header Include mil.h.
Library Use mil.lib; milcal.lib.
DLL Requires mil.dll; milcal.dll.
PROC CALIBRATION INPUT DATA NULL GRID LIST PARAMETRIC CALIBRATION PLANE ABSOLUTE COORDINATE SYSTEM RELATIVE COORDINATE SYSTEM CALIBRATION STATUS CALIBRATED CALIBRATING GRID NOT FOUND INVALID CALIBRATION POINTS MATHEMATICAL EXCEPTION NOT INITIALIZED PLANE ANGLE TOO SMALL TOO MANY OUTLIERS LINK TOOL AND CAMERA DISABLE ENABLE LOCALIZATION NB ITERATIONS MAX LOCALIZATION NB OUTLIERS MAX OWNER SYSTEM DEFAULT HOST RELATIVE ORIGIN ANGLE RELATIVE ORIGIN X RELATIVE ORIGIN Y RELATIVE ORIGIN Z TOOL POSITION X TOOL POSITION Y TOOL POSITION Z TRANSFORM CACHE DISABLE ENABLE COLUMN NUMBER COLUMN SPACING FOREGROUND VALUE DEFAULT FOREGROUND BLACK FOREGROUND WHITE GRID FIDUCIAL DATAMATRIX NONE GRID HINT ANGLE X NONE GRID HINT PIXEL X NONE GRID HINT PIXEL Y NONE GRID ORIGIN X GRID ORIGIN Y GRID ORIGIN Z GRID PARTIAL DISABLE ENABLE GRID SHAPE ANY RECTANGLE GRID TYPE CHESSBOARD GRID CIRCLE GRID GRID UNIT SHORT NAME GRID UNITS CENTIMETERS FEET INCHES KILOMETERS METERS MICROMETERS MILES MILLIMETERS MILS UNKNOWN ROW NUMBER ROW SPACING AVERAGE PIXEL ERROR AVERAGE WORLD ERROR CALIBRATION IMAGE POINTS X CALIBRATION IMAGE POINTS Y CALIBRATION WORLD POINTS X CALIBRATION WORLD POINTS Y CALIBRATION WORLD POINTS Z GLOBAL AVERAGE PIXEL ERROR GLOBAL AVERAGE WORLD ERROR GLOBAL MAXIMUM PIXEL ERROR GLOBAL MAXIMUM WORLD ERROR MAXIMUM PIXEL ERROR MAXIMUM WORLD ERROR NUMBER OF CALIBRATION POINTS NUMBER OF CALIBRATION POSES NB ELEMENTS ASPECT RATIO INVALID SCALE CCD ASPECT RATIO DISTORTION RADIAL 1 FOCAL LENGTH PRINCIPAL POINT X DEFAULT PRINCIPAL POINT Y DEFAULT ASSOCIATED CALIBRATION NULL DEFAULT UNIFORM CALIBRATION CALIBRATION CATEGORY NULL 2D CALIBRATION 3D CALIBRATION CALIBRATION MODE NULL 3D ROBOTICS LINEAR INTERPOLATION PERSPECTIVE TRANSFORMATION TSAI BASED UNIFORM TRANSFORMATION CONSTANT PIXEL SIZE FALSE TRUE CORRECTION STATE FALSE TRUE DEPTH MAP FALSE TRUE Y AXIS DIRECTION Y AXIS CLOCKWISE Y AXIS COUNTER CLOCKWISE CALIBRATION CHILD OFFSET X CALIBRATION CHILD OFFSET Y GRAY LEVEL SIZE Z INVALID SCALE PIXEL ROTATION PIXEL SIZE X PIXEL SIZE Y WORLD POS X WORLD POS Y WORLD POS Z DEFAULT ANGLE POSITION X POSITION Y DRAW ABSOLUTE COORDINATE SYSTEM DISABLE ENABLE DRAW CAMERA COORDINATE SYSTEM DISABLE ENABLE DRAW CAMERA COORDINATE SYSTEM NAME DRAW COORDINATE SYSTEM LENGTH DRAW FRUSTUM DISABLE ENABLE DRAW FRUSTUM 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 DRAW RELATIVE COORDINATE SYSTEM DISABLE ENABLE DRAW RELATIVE COORDINATE SYSTEM NAME DRAW RELATIVE XY PLANE DISABLE ENABLE DRAW RELATIVE XY PLANE COLOR FILL 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 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 DRAW ROBOT BASE COORDINATE SYSTEM DISABLE ENABLE DRAW TOOL COORDINATE SYSTEM DISABLE ENABLE STRING SIZE TYPE MIL DOUBLE TYPE MIL FLOAT TYPE MIL ID TYPE MIL INT TYPE MIL INT16 TYPE MIL INT32 TYPE MIL INT64 TSAI BASED 3D ROBOTICS NULL TRUE NULL TRUE