2.3.5.1 EMR_ANGLEARC Record

The EMR_ANGLEARC record specifies a line segment of an arc. The line segment is drawn from the current position to the beginning of the arc. The arc is drawn along the perimeter of a circle with the given radius and center. The length of the arc is defined by the given start and sweep angles.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Type

Size

Center

...

Radius

StartAngle

SweepAngle

Type (4 bytes): An unsigned integer that identifies this record type as EMR_ANGLEARC. This value is 0x00000029.

Size (4 bytes): An unsigned integer that specifies the size of this record in bytes.

Center (8 bytes): A PointL object ([MS-WMF] section 2.2.2.15), which specifies the logical coordinates of the circle's center.

Radius (4 bytes): An unsigned integer that specifies the circle's radius, in logical units.

StartAngle (4 bytes): A 32-bit float that specifies the arc's start angle, in degrees.

SweepAngle (4 bytes): A 32-bit float that specifies the arc's sweep angle, in degrees.

The arc is drawn by recording an imaginary circle around the specified center point with the specified radius. The starting point of the arc is determined by measuring counterclockwise from the x-axis of the circle by the number of degrees in the start angle. The ending point is similarly located by measuring counterclockwise from the starting point by the number of degrees in the sweep angle.

If the sweep angle is greater than 360 degrees, the arc is swept multiple times.

This record specifies lines by using the current pen. The figure is not filled.

See section 2.3.5 for more drawing record types.