ANNPOINTOPTIONS

typedef struct tagANNPOINTOPTIONS 
{ 
   L_UINT uStructSize; 
   L_UINT uFlags; 
   L_BOOL bPointUseBitmap; 
   pBITMAPHANDLE pPointBitmap; 
   L_UINT uBitmapStructSize; 
   L_BOOL bPointBitmapTransparent; 
   COLORREF crPointBitmapTransparentColor; 
   L_INT32 nPointRadius; 
   COLORREF crPointBorderColor; 
   L_BOOL bPointTransparentFill; 
   COLORREF crPointFillColor; 
   L_BOOL bPointFixedSize; 
   L_INT32 nReserved; 
} ANNPOINTOPTIONS, *pANNPOINTOPTIONS; 

The ANNPOINTOPTIONS structure is used with the functions LAnnAutomation::SetPointOptions, LAnnPoint::SetPointOptions and LAnnAutomation::GetPointOptions, LAnnPoint::GetPointOptions to get or set options on an annotation point object.

Member Description
uStructSize Size of this structure. Use sizeof(ANNENCRYPTOPTIONS)
uFlags Identifies which fields are valid. Possible values are one or more of the following constants "or"ed together.
  Value Meaning
  ANNPOINT_USE_BITMAP [0x001] bPointUseBitmap field is valid.
  ANNPOINT_BITMAP [0x002] pPointBitmap field is valid.
  ANNPOINT_BITMAP_TRANSPARENT [0x004] bPointBitmapTransparent field is valid
  ANNPOINT_BITMAP_TRANSPARENT_COLOR [0x008] crPointBitmapTransparentColor field is valid.
  ANNPOINT_RADIUS [0x010] nPointRadius field is valid.
  ANNPOINT_BORDER_COLOR [0x020] crPointBorderColor field is valid.
  ANNPOINT_FILL_COLOR [0x040] crPointFillColor field is valid.
  ANNPOINT_TRANSPARENT_FILL [0x080] bPointTransparentFill field is valid.
  ANNPOINT_FIXED_SIZE [0x100] bPointFixedSize field is valid.
  ANNPOINT_ALL [0x1ff] All fields are valid.

 

bPointUseBitmap Flag that indicates whether to draw the point using the current point bitmap or as a circle. Possible values are:
  Value Meaning
  TRUE Draw the point using the current point bitmap.
  FALSE Draw the point as a circle.
pPointBitmap Pointer to a BITMAPHANDLE structure that gets or sets the point bitmap.
uBitmapStructSize Size of the structure pointed to by pBitmap, for versioning.  Use sizeof(BITMAPHANDLE).
bPointBitmapTransparent Flag that indicates whether there is a transparent color. Possible values are:
  Value Meaning
  TRUE If the point is drawn using a bitmap, draw with a transparent color.
  FALSE If the point is drawn using a bitmap, there is no transparent color.
crPointBitmapTransparentColor If the point is drawn as a bitmap, and bPointBitmapTransparent is TRUE, this specifies the transparent color.
nPointRadius If the point is drawn as a circle, this specifies the radius in pixels (assuming no zooming).
crPointBorderColor If the point is drawn as a circle, this is the outline color
bPointTransparentFill Flag for a point drawn as a circle that indicates whether the inside is transparent or uses the fill color. Possible values are:
  Value Meaning
  TRUE If the point is drawn as a circle, the inside is transparent.
  FALSE If the point is drawn as a circle, the fill color is crPointFillColor.
crPointFillColor If the point is drawn as a circle, this is the fill color.
bPointFixedSize Flag for a point drawn as a circle that indicates whether the point is a fixed size. Possible values are:
  Value Meaning
  TRUE If the point is drawn as a circle, the size does not change, regardless of the zoom factor
  FALSE If the point is drawn as a circle, the size changes with the zoom factor.
nReserved Reserved for future use. Must set this field to zero.

Comments

When calling LAnnAutomation::GetPointOptions or LAnnPoint::GetPointOptions, the uFlags field identifies which fields to retrieve. When calling LAnnAutomation::SetPointOptions or LAnnPoint::SetPointOptions, the uFlags field identifies which fields to set.

To get the bitmap of the current point object (hObject), do the following:

memset(&PointOptions, 0, sizeof(ANNPOINTOPTIONS)); 

PointOptions.nSize = sizeof(ANNPOINTOPTIONS); 

PointOptions.uFlags = ANNPOINT_BITMAP; 

PointOptions. pPointBitmap = &PointBitmap; 

LAnnAutomation::GetPointOptions, LAnnPoint::GetPointOptions(hObject, &PointOptions);

If the call to LAnnAutomation::GetPointOptions or LAnnPoint::GetPointOptions is successful, PointBitmap now contains the point bitmap. You must call LBitmapBase::Free(&PointBitmap) when you are finished with the bitmap.

If the point is being drawn using a bitmap, the current default point bitmap is used. This can be changed by making the pPointBitmap field point to a valid LEAD bitmap handle, adding the ANNPOINT_BITMAP flag to the uFlags field, and calling LAnnAutomation::SetPointOptions or LAnnPoint::SetPointOptions.

If bPointBitmapTransparent is TRUE, then the point bitmap is displayed with transparency, where crPointBitmapTransparentColor is the transparent color.

If the point is not being drawn using a bitmap, it is displayed as a circle with the following properties:

Help Version 20.0.2018.2.25
Products | Support | Contact Us | Copyright Notices
© 1991-2018 LEAD Technologies, Inc. All Rights Reserved.
LEADTOOLS Raster Imaging C++ Class Library Help