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


Graphics::D rawBezier(constPen*,constPointF&,constPointF&,constPointF&,constPointF&) метод (gdiplusgraphics.h)

Метод Graphics::D rawBezier рисует линию Bézier.

Синтаксис

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

Параметры

[in] pen

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

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

[in, ref] pt1

Тип: const POINTF

Ссылка на начальную точку сплайна Bézier.

[in, ref] pt2

Тип: const POINTF

Ссылка на первую контрольную точку spline Bézier.

[in, ref] pt3

Тип: const POINTF

Ссылка на вторую контрольную точку сплайна Bézier.

[in, ref] pt4

Тип: const POINTF

Ссылка на конечную точку сплайна Bézier.

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

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

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

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

Замечания

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

Примеры

В следующем примере выполняется рисование кривой Bézier.


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

   // Set up the pen and curve points.
   Pen greenPen(Color(255, 0, 255, 0));
   PointF startPoint(100.0f, 100.0f);
   PointF controlPoint1(200.0f, 10.0f);
   PointF controlPoint2(350.0f, 50.0f);
   PointF endPoint(500.0f, 100.0f);

   //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 Профессиональный [только классические приложения]
минимальный поддерживаемый сервер Windows 2000 Server [только классические приложения]
целевая платформа Виндоус
заголовка gdiplusgraphics.h (include Gdiplus.h)
библиотеки Gdiplus.lib
DLL Gdiplus.dll

См. также

Bézier Splines

DrawBezier

Методы drawBeziers

Рисование Bézier Splines

графики

пера

PointF