LEADTOOLS Raster Imaging C DLL Help > LEADTOOLS Raster Imaging Features > Annotations > Used Structures > ANNPOINTEROPTIONS |
typedef struct tagANNPOINTEROPTIONS
{
L_UINT32 uStructSize;
L_UINT uFlags;
L_INT nPointerHeadM;
L_INT nPointerHeadB;
L_INT32 nReserved;
} ANNPOINTEROPTIONS, *pANNPOINTEROPTIONS;
The ANNPOINTEROPTIONS structure contains information about the pointer options of an ANNOBJECT_POINTER or ANNOBJECT_AUTOMATION object.
Member |
Description |
|
uStructSize |
Size of this structure. Use sizeof(ANNPOINTEROPTIONS). |
|
uFlags |
Flag that indicates which fields are valid. Possible values are one or more of the following constants "or"ed together: |
|
|
Value |
Meaning |
|
ANNPOINTER_HEAD |
[0x0001] nPointerHeadM and nPointerHeadB fields are valid. |
|
ANNPOINTER_ALL |
[0x0001] All fields are valid. |
nPointerHeadM |
Value that determines the length of the pointer head (along with nPointerHeadB). |
|
nPointerHeadB |
Value that determines the length of the pointer head (along with nPionterHeadM). |
|
nReserved |
Reserved for future use. Pass 0. |
Comments
When calling L_AnnGetPointerOptions function, the uFlags field identifies which fields to retrieve. When calling L_AnnSetPointerOptions function, the uFlags field identifies which fields to set.
For an ANNOBJECT_POINTER object, the length of the head is determined as a linear function of the line width of the object as follow:
LengthOfHead = (LineWidth) * (nPointerHeadM) + nPointerHeadB
Setting nPointerHeadM to 1 or more causes the pointer head length to change as the line width changes. Setting nPointerHeadM to 0, and nPointerHeadB to a non-zero value causes the pointer head length to stay constant, regardless of the line width.
When you create an ANNOBJECT_POINTER object in the automation mode, the values for nPointerHeadM and nPointerHeadB are being obtained from the automation object.
The ANNPOINTEROPTIONS structure is used with the functions L_AnnSetPointerOptions and L_AnnGetPointerOptions