L_DispContainerCalibrateCell

#include "l_bitmap.h"

L_LTIVW_API L_INT EXT_FUNCTION L_DispContainerCalibrateCell(hCellWnd, nSubCellIndex, dLength, uUnit, dTargetLength, uTargetUnit, uFlags)

HWND hCellWnd;

/* handle to the cell window */

L_INT nSubCellIndex;

/* index into the image list attached to the cell */

L_DOUBLE dLength;

/* length assigned to the virtual ruler */

L_UINT uUnit;

/* units of the length */

L_DOUBLE dTargetLength;

/* new length assigned to the virtual ruler */

L_UINT uTargetUnit;

/* units of the length */

L_UINT uFlags;

/* flag */

Calibrates the cell or sub-cell without having to use the annotation ruler, to calibrate using annotation ruler use the L_DispContainerCalibrateRuler function.

Parameter

Description

hCellWnd

A handle to the window that represents the cell on which the function's effect will be applied.

nSubCellIndex

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.

dLength

Value that represents the old length of the virtual ruler.

uUnit

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.

dTargetLength

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.

uTargetUnit

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.

uFlags

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.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

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.

Required DLLs and Libraries

LTIVW

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

Platforms

Windows 2000 /XP/Vista.

See Also

Functions:

L_DispContainerCreate, L_DispContainerDestroy, L_DispContainerCalibrateRuler, L_DispContainerUpdateCellView, L_DispContainerEndUpdate, L_DispContainerSetRulerUnit, L_DispContainerGetRulerUnit, L_DispContainerSetCellTag, L_DispContainerSetSubCellTag

Topics:

Using the Image Viewer

 

Image Viewer Functions: Using the Image Viewer

Example

This example calibrates the first frame of the first cell.

#if defined LEADTOOLS_V17_OR_LATER
#if defined (LEADTOOLS_V16_OR_LATER)
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;
}
#endif

#else



#if defined (LEADTOOLS_V16_OR_LATER)
L_INT DispContainerCalibrateCellExample(HDISPCONTAINER hCon)
{
   L_INT        nRet;

   nRet = L_DispContainerCalibrateCell(hCon, 0, 0, 1, CONTAINER_RULERUNIT_CENTIMETERS, 2, CONTAINER_RULERUNIT_CENTIMETERS, 0);

   return nRet;
}
#endif

#endif