L_AnnConvert

#include "l_bitmap.h"

L_LTANN_API L_INT L_AnnConvert(hContainer, pPoints, pAnnPoints, nCount, nConvert)

HANNOBJECT hContainer;

/* handle to the annotation container */

LPPOINT pPoints;

/* array of points in client coordinates */

pANNPOINT pAnnPoints;

/* array of points in container coordinates */

L_INT nCount;

/* number of points in the arrays (pPoints, pAnnPoints) */

L_INT nConvert;

/* direction of conversion */

Use this function to convert back and forth between container coordinates and client coordinates.

Parameter

Description

hContainer

Handle to the annotation container

pPoints

Array of points in client coordinates. Client coordinates factor in the current zoom factor, and the horizontal and vertical scrolling

pAnnPoints

Array of points in container coordinates. Container coordinates are typically the same dimensions of the underlying bitmap, and are independent of zooming and scrolling.

nCount

Number of points in the arrays (pPoints, pAnnPoints)

nConvert

A value that specifies the direction of the conversion. Possible values are:

 

Value

Meaning

 

ANNCONVERT_TO_CONTAINER

[1] Convert to container coordinates

 

ANNCONVERT_TO_CLIENT

[2] Convert to client coordinates

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

Use this function to convert back and forth between container coordinates and client coordinates.

The number of elements in both the pPoints and pAnnPoints arrays must be AT LEAST equal to nCount.

When nConvert is ANNCONVERT_TO_CONTAINER, the pPoints array must contain valid entries. If successful, pAnnPoints will contain the converted points.

When nConvert is ANNCONVERT_TO_CLIENT, the pAnnPoints array must contain valid entries. If successful, pPoints will contain the converted points.

Required DLLs and Libraries

LTANN

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

Win32, x64.

See Also

Functions:

L_AnnDefine, L_AnnAddUserHandle, L_AnnAdjustPoint, L_AnnChangeUserHandle, L_AnnDefine2, L_AnnDeleteUserHandle, L_AnnEnumerateHandles, L_AnnGetRestrictToContainer, L_AnnGetRotateAngle, L_AnnGetUserHandle, L_AnnGetUserHandles, L_AnnHitTest, L_AnnRestrictCursor, L_AnnSetRestrictToContainer

Topics:

Annotation Functions: Creating and Deleting Annotations

 

Implementing Custom Annotations

 

Implementing Annotations

 

Implementing an Automated Annotation Program

 

Implementing a Non-automated Annotation Program

Example

For an example, refer to L_AnnRestrictCursor.