Эллипсы и дуги в GDI+

Эллипсы и дуги можно легко нарисовать, используя методы DrawEllipse и DrawArc класса Graphics.

Рисование эллипса

Для рисования эллипса потребуются объекты Graphics и Pen. Объект Graphics предоставляет метод DrawEllipse, а объект Pen хранит в себе такие атрибуты, как ширина и цвет линии, используемой для отрисовки эллипса. Объект Pen передается в качестве одного из аргументов методу DrawEllipse. Остальные аргументы, переданные методу DrawEllipse, указывают прямоугольник, ограничивающий эллипс. На следующем рисунке показаны эллипс и его ограничивающий прямоугольник.

Screenshot of an ellipse surrounded by its bounding rectangle.

В следующем примере рисуется эллипс; ограничивающий прямоугольник имеет ширину 80, высоту 40 и левый верхний угол (100, 50):

myGraphics.DrawEllipse(myPen, 100, 50, 80, 40);
myGraphics.DrawEllipse(myPen, 100, 50, 80, 40)

DrawEllipse является перегруженным методом класса Graphics, поэтому передать ему аргументы можно несколькими способами. Например, можно создать Rectangle и передать Rectangle в метод DrawEllipse в качестве аргумента:

Rectangle myRectangle = new Rectangle(100, 50, 80, 40);
myGraphics.DrawEllipse(myPen, myRectangle);
Dim myRectangle As New Rectangle(100, 50, 80, 40)
myGraphics.DrawEllipse(myPen, myRectangle)

Рисование дуги

Дуга — это часть эллипса. Чтобы нарисовать дугу, вызовите метод DrawArc класса Graphics. Параметры метода DrawArc совпадают с параметрами метода DrawEllipse, за тем исключением, что для DrawArc требуются начальный угол и угол развертки. В следующем примере рисуется дуга с начальным углом 30 градусов и углом развертки 180 градусов:

myGraphics.DrawArc(myPen, 100, 50, 140, 70, 30, 180);
myGraphics.DrawArc(myPen, 100, 50, 140, 70, 30, 180)

На следующем рисунке показаны дуга, эллипс и ограничивающий прямоугольник.

Screenshot of an ellipse with an arc and its bounding rectangle.

См. также