Практическое руководство. Создание изображений из прямых и кривых линий и геометрических фигур
Чтобы создать изображение, создайте GraphicsPath, а затем вызывать методы, такие как AddLine и AddCurve, чтобы добавить путь к примитивы.
Пример
В следующих примерах кода создаются путей, содержащих данные:
В первом примере создается путь, состоящий из одной фигуры. Рисунок состоит из одного дуги. Дуга имеет угол поворота, равный-180 градусов, который является против часовой стрелки в системе координат по умолчанию.
Во втором примере создается путь, состоящий из двух фигур. Первая фигура является дуги, за которым следует строка. Вторая – это линия, за которым следует строка кривую следует. Первая фигура останется открытым, а второй замкнутой.
GraphicsPath path = new GraphicsPath();
path.AddArc(175, 50, 50, 50, 0, -180);
e.Graphics.DrawPath(new Pen(Color.FromArgb(128, 255, 0, 0), 4), path);
// Create an array of points for the curve in the second figure.
Point[] points = {
new Point(40, 60),
new Point(50, 70),
new Point(30, 90)};
GraphicsPath path = new GraphicsPath();
path.StartFigure(); // Start the first figure.
path.AddArc(175, 50, 50, 50, 0, -180);
path.AddLine(100, 0, 250, 20);
// First figure is not closed.
path.StartFigure(); // Start the second figure.
path.AddLine(50, 20, 5, 90);
path.AddCurve(points, 3);
path.AddLine(50, 150, 150, 180);
path.CloseFigure(); // Second figure is closed.
e.Graphics.DrawPath(new Pen(Color.FromArgb(255, 255, 0, 0), 2), path);
Компиляция кода
Предыдущий пример предназначен для работы с Windows Forms, и они требуют PaintEventArgs e
, который является параметром Paint обработчик событий.