#include "l_bitmap.h"
L_LTIVW_API L_INT EXT_FUNCTION L_DispContainerCalibrateCell(hCellWnd, nSubCellIndex, dLength, uUnit, dTargetLength, uTargetUnit, uFlags)
Calibrates the cell or sub-cell without having to use the annotation ruler, to calibrate using annotation ruler use the L_DispContainerCalibrateRuler function.
A handle to the window that represents the cell on which the function's effect will be applied.
A zero-based index into the image list attached to the cell specified in nCellIndex. This sub-cell will be calibrated. Pass -1 to apply this effect on all sub-cells. Pass -2 to apply this effect on the selected sub-cell.
Value that represents the old length of the virtual ruler.
Value that specifies the unit of measure for the virtual ruler length. Possible values are:
Value | Meaning |
---|---|
CONTAINER_RULERUNIT_INCHES | [0] Inches. |
CONTAINER_RULERUNIT_FEET | [1] Feet. |
CONTAINER_RULERUNIT_MICROMETERS | [2] Micrometers. |
CONTAINER_RULERUNIT_MILLIMETERS | [3] Millimeters. |
CONTAINER_RULERUNIT_CENTIMETERS | [4] Centimeters. This is the default value. |
CONTAINER_RULERUNIT_METERS | [5] Meters. |
Value that represents the length to be assigned to the virtual ruler. The unit of measure for the length is specified by the value of the uTargetUnit parameter.
Value that specifies the unit of measure for the virtual ruler length. Possible values are:
Value | Meaning |
---|---|
CONTAINER_RULERUNIT_INCHES | [0] Inches. |
CONTAINER_RULERUNIT_FEET | [1] Feet. |
CONTAINER_RULERUNIT_MICROMETERS | [2] Micrometers. |
CONTAINER_RULERUNIT_MILLIMETERS | [3] Millimeters. |
CONTAINER_RULERUNIT_CENTIMETERS | [4] Centimeters. This is the default value. |
CONTAINER_RULERUNIT_METERS | [5] Meters. |
Flags that indicate the direction to which the calibration is applied. Possible values are:
Value | Meaning |
---|---|
CONTAINER_CALIBRATERULER_BOTH | [0] Calibrate both axes. This is the default value. |
CONTAINER_CALIBRATERULER_VERTICAL | [1] Calibrate only the vertical axis. |
CONTAINER_CALIBRATERULER_HORIZONTAL | [2] Calibrate only the horizontal axis. |
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
< 1 | An error occurred. Refer to Return Codes. |
This function does not require that the annotation ruler to be present in order to calibrate the cell.
The user is expected to send a length along with the unit of measure, and then send a new length with the new unit of measure for the cell being calibrated.
To obtain the unit of measure of the viewer, call the L_DispContainerGetRulerUnit function.
To change the unit of measure unit of the viewer, call the L_DispContainerSetRulerUnit function.
Required DLLs and Libraries
Platforms
The toolkit comes in Win32 and x64 editions that can support development of software applications for any of the following environments:
Windows 10
Windows 8
Windows 7
Windows Vista
Windows XP
Windows 2000
This example calibrates the first frame of the first cell.
L_INT DispContainerCalibrateCellExample(HDISPCONTAINER hCon)
{
L_INT nRet;
if (L_DispContainerGetCellCount(hCon, 0) == 0)
{
MessageBox(NULL, TEXT("you must at least have one cell added to the viewer"), TEXT("No Cell attached"), MB_OK);
return FAILURE;
}
HWND hCellWnd = L_DispContainerGetCellWindowHandle(hCon, 0, 0);
nRet = L_DispContainerCalibrateCell(hCellWnd, 0, 1, CONTAINER_RULERUNIT_CENTIMETERS, 2, CONTAINER_RULERUNIT_CENTIMETERS, 0);
return nRet;
}