LEADTOOLS Raster Imaging C DLL Help > Function References > L_AnnSetPoints |
#include "l_bitmap.h"
L_LTANN_API L_INT L_AnnSetPoints(hObject, pPoints, uCount)
HANNOBJECT hObject; |
/* handle to the annotation object */ |
pANNPOINT pPoints; |
/* points that specify the shape of the annotation */ |
L_UINT uCount; |
/* number of points */ |
Defines the shape of an annotation object, such as a polygon, that requires multiple points.
Parameter |
Description |
hObject |
Handle to the annotation object. |
pPoints |
Pointer to the array of LEADTOOLS ANNPOINT structures that specifies the shape of the annotation. |
|
The ANNPOINT structure is like a Windows POINT structure, except that it uses double-precision floating point values. |
|
Coordinates of an object's points are relative to its container object. The coordinates are interpreted using the container's scaling factors and offsets, which are described in Low-Level Coordinate System for Annotations. |
uCount |
The number of points in the array that you specify in the pPoints parameter. |
Returns
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
Comments
You call this function once, passing an array of points, which must be in the order in which the vertices are connected. To define the line that closes a polygon, the last point in the array is connected to the first point of the array.
Alternatively, you can use the L_AnnDefine function to specify the array of points interactively.
L_AnnSetPoints works only with the following types of objects:
ANNOBJECT_POINTER
ANNOBJECT_FREEHAND
ANNOBJECT_LINE
ANNOBJECT_POLYGON
ANNOBJECT_POLYLINE
ANNOBJECT_POINT
ANNOBJECT_PROTRACTOR
ANNOBJECT_FREEHANDHOTSPOT
ANNOBJECT_TEXTPOINTER
ANNOBJECT_POLYRULER
For annotation objects that are defined by a rectangle, use the L_AnnSetRect function.
You can position a Point object using the following:
ANNPOINT apt;
L_AnnSetPoints(hPoint, apt, 1);
where apt contains the desired position.
To set the points of a cross-product object, do the following:
ANNPOINT apt[5];
L_AnnGetPoints(hPoint, apt, 5);
hPoint is the handle to the cross-product object. apt[0] and apt[1] are the points for the primary ruler. apt[2] is the intersection point. apt[3] and apt[4] are the points for the secondary ruler.
To set the points of a protractor object, do the following:
ANNPOINT apt [3];
L_AnnSetPoints(hPoint, apt, 3);
hPoint is the handle to the protractor object. apt[0] and apt[2] are the endpoints for the two rulers. apt[1] is the intersection point. This is shown below:
When calling L_AnnSetPoints on a ANNOBJECT_TEXTPOINTER object, specify three points. The three points are (Upper Left), (Lower Right), (Anchor).
Note: You can not create a line of two points which they are the same.
Required DLLs and Libraries
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
Example
For an example, refer to L_AnnCreate.