Поделиться через


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

Многоточие и дуги можно легко нарисовать с помощью методов DrawEllipse и DrawArc класса Graphics.

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

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

снимок экрана эллипса, окруженного ограничивающим прямоугольником.

В следующем примере рисуется многоточие; Ограничивающий прямоугольник имеет ширину 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)

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

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

См. также