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


Graphics::D rawBezier(constPen*,constPoint&,constPoint&,constPoint&,constPoint&) (gdiplusgraphics.h)

Метод Graphics::D rawBezier рисует сплайн Безье.

Синтаксис

Status DrawBezier(
  [in]      const Pen     *pen,
  [in, ref] const Point & pt1,
  [in, ref] const Point & pt2,
  [in, ref] const Point & pt3,
  [in, ref] const Point & pt4
);

Параметры

[in] pen

Тип: константное перо*

Указатель на перо, используемое для рисования сплайна Безье.

[in, ref] pt1

Тип: const POINT

Ссылка на начальную точку сплайна Безье.

[in, ref] pt2

Тип: const POINT

Ссылка на первую контрольную точку сплайна Безье.

[in, ref] pt3

Тип: const POINT

Ссылка на вторую контрольную точку сплайна Безье.

[in, ref] pt4

Тип: const POINT

Ссылка на конечную точку сплайна Безье.

Возвращаемое значение

Тип: Состояние

В случае успешного выполнения метода возвращается ОК, который является элементом перечисления Status .

Если метод завершается сбоем, он возвращает один из других элементов перечисления Status .

Комментарии

Сплайн Безье не проходит через свои контрольные точки. Контрольные точки действуют как магниты, вытягивая кривую в определенных направлениях, чтобы повлиять на то, как сплайн Безье изгибается.

Примеры

В следующем примере рисуется кривая Безье.


VOID Example_DrawBezier(HDC hdc)
{
   Graphics graphics(hdc);

   // Set up the pen and curve points.
   Pen greenPen(Color(255, 0, 255, 0));
   Point startPoint(100, 100);
   Point controlPoint1(200, 10);
   Point controlPoint2(350, 50);
   Point endPoint(500, 100);

   //Draw the curve.
   graphics.DrawBezier(&greenPen, startPoint, controlPoint1, controlPoint2, endPoint);

   //Draw the end points and control points.
   SolidBrush redBrush(Color(255, 255, 0, 0));
   SolidBrush blueBrush(Color(255, 0, 0, 255));
   graphics.FillEllipse(&redBrush, 100 - 5, 100 - 5, 10, 10);
   graphics.FillEllipse(&redBrush, 500 - 5, 100 - 5, 10, 10);
   graphics.FillEllipse(&blueBrush, 200 - 5, 10 - 5, 10, 10);
   graphics.FillEllipse(&blueBrush, 350 - 5, 50 - 5, 10, 10);
}

Требования

   
Минимальная версия клиента Windows XP, Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header gdiplusgraphics.h (включая Gdiplus.h)
Библиотека Gdiplus.lib
DLL Gdiplus.dll

См. также раздел

Безье Сплайнс

DrawBezier

Методы DrawBeziers

Рисование сплайнов Безье

Графика

Перо

Point