Рисование дуги и сектора эллипса

Возьмем из файла wingdi.h описание функции Arc(), которая используется для рисования дуги:

  WINGDIAPI BOOL  WINAPI Arc(HDC, int, int, int, int, int, int, int, int);

Первые пять аргументов полностью аналогичны аргументам функции Ellipse(). Непосредственно дуга определяется еще двумя точками. Первая - начало дуги - находится на пересечении эллипса, частью которого является дуга, и прямой, проходящей через центр прямоугольника и точку начала дуги. На рисунке начало дуги обозначено StartX, StartY. Вторая - конец дуги - определяется аналогично. Конец дуги обозначен EndX, EndY. Таким образом, для прорисовки дуги необходимо сначала определить точки StartX, StartY и EndX, EndY, после чего прорисовывать дугу. Дуга прорисовывается против часовой стрелки.

Ellipse

У функции Pie(), которая применяется для рисования сектора эллипса, набор аргументов и их обозначения абсолютно идентичны функции Arc().

Используются технологии uCoz