LAnnProtractor::GetPoints

#include "ltwrappr.h"

virtual L_INT LAnnProtractor::GetPoints(pPoints)

pANNPOINT pPoints;

/* pointer to an array */

Fills the specified array of ANNPOINT structures with the endpoints of the ruler object. This function is available in the Document/Medical Toolkits.

Parameter

Description

pPoints

Pointer to the array to be filled with the vertices of the protractor object.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

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.

The order of the vertices in the array is shown below:

image\ProPoint.gif

 

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.

See Also

Functions:

Class Members

Topics:

Annotation Functions: Getting and Setting Geometric Properties

 

Annotation Functions: Using Window Coordinates to Define an Object

 

New Annotation Features of Version 14.5

 

Calibrating Annotation Ruler Objects

Example

void CVCAnnotation11Dlg::OnButtonGetPointCount()
{
   LBitmap MyBitmap;

   L_UNLOCKSUPPORT(L_SUPPORT_DOCUMENT, L_KEY_DOCUMENT);

   LAnnProtractor MyAnnProtractor;

   ANNPOINT MyPts[3] = { 40,40,
   140,40,
   140,140
};
   pANNPOINT pMyPts = MyPts;
   MyAnnProtractor.SetPoints(pMyPts, 3);

   L_UINT uPointCount = MyAnnProtractor.GetPointCount();
   HGLOBAL hGlobal = GlobalAlloc(GMEM_MOVEABLE, sizeof(ANNPOINT) * uPointCount);
   pANNPOINT pAnnPoint = (pANNPOINT)GlobalLock(hGlobal);

   MyAnnProtractor.GetPoints(pAnnPoint);

   for (unsigned int i=0; i<uPointCount; i++)
   {
      L_TCHAR szTemp[100];

      wsprintf(szTemp, TEXT("[%d]Point(%d, %d)"), i, (int)pAnnPoint[i].x, (int)pAnnPoint[i].y);
      AfxMessageBox(szTemp);
   }
   GlobalFree(hGlobal);
}