HATCHBRUSH

typedef  struct  _HATCHBRUSH
{
     HATCHBRUSHSTYLE  HatchBrushStyle;
     LOGPEN  LogPen;
     LOGBRUSH  LogBrush;
     L_INT  nStepSize;
     L_DOUBLE  dLineRotAngle;  
     L_UINT32  dwFlags;
     L_INT  nPointCount;
     LPPOINT  pEntryPoints;
}HATCHBRUSH,  *pHATCHBRUSH;

The HATCHBRUSH structure contains information for creating patterns that can be repeated to fill a closed area. This is called the hatch unit and it can be one of several predefined primary types, or it can be user defined. The primary types are: Rectangle, Circle, Triangle and Line.

Member

Description

HatchBrushStyle

Value that indicates the hatch brush style. Possible values are:

 

Value

Meaning

 

HATCH_RECTANGLE

Rectangular hatches

 

HATCH_CIRCLE

Circular hatches

 

HATCH_TRIANGLE

Triangular hatched

 

HATCH_LINE

Linear hatches

 

HATCH_CUSTOM

User defined hatches

LogPen

Windows LOGPEN structure that defines the pen properties used to draw the outlines of the filling units. For more information about this data type, please refer to Microsoft documentation of the structure LOGPEN.

LogBrush

Windows LOGBRUSH structure that defines the brush properties. used to fill the hatch units. For more information about this data type, please refer to Microsoft documentation of the structure LOGBRUSH.

NOTE: the data in this structure is invalid in the case of linear hatches.

nStepSize

The hatch unit size (in device units)

dLineRotAngle

Rotation angle of the hatch lines, in degrees.

This field is valid only in the case of linear hatches.

dwFlags

Flags used to control the hatch filling. Possible values are:

 

Value

Meaning

 

HATCH_BRUSH_CUSTOM_CLOSED

Close the user defined hatch. When this flag is set, the LogBrush attributes will be used to fill the user defined area.

 

HATCH_BRUSH_CUSTOM_OPEN

The user defined path is not closed. No filling will be applied to the hatch units and the LogBrush member will be ignored.

nPointCount

Number of points that specify the user defined path to be used as the hatch unit.

pEntryPoints

The user defined path points which specify the hatch units. This member should contain nPointCount elements.