Graphics::D rawBezier(constPen*,INT,INT,INT,INT,INT,INT) (gdiplusgraphics.h)
Метод Graphics::D rawBezier рисует линию Bézier.
Синтаксис
Status DrawBezier(
[in] const Pen *pen,
[in] INT x1,
[in] INT y1,
[in] INT x2,
[in] INT y2,
[in] INT x3,
[in] INT y3,
[in] INT x4,
[in] INT y4
);
Параметры
[in] pen
Тип: константа пера*
Указатель на перо, которое используется для рисования сплайна Bézier.
[in] x1
Тип: INT
Целое число, указывающее координату x начальной точки spline Bézier.
[in] y1
Тип: INT
Целое число, указывающее координату y начальной точки сплайна Bézier.
[in] x2
Тип: INT
Целое число, указывающее координату x первой контрольной точки spline Bézier.
[in] y2
Тип: INT
Целое число, указывающее координату Y первой контрольной точки spline Bézier
[in] x3
Тип: INT
Целое число, указывающее координату x второй контрольной точки spline Bézier.
[in] y3
Тип: INT
Целое число, указывающее координату y второй контрольной точки сплайна Bézier.
[in] x4
Тип: INT
Целое число, указывающее координату x конечной точки сплайна Bézier.
[in] y4
Тип: INT
Целое число, задающее координату y конечной точки сплайна Bézier
Возвращаемое значение
Тип: состояния
Если метод выполнен успешно, он возвращает ok, который является элементом перечисления Status.
Если метод завершается ошибкой, он возвращает один из других элементов перечисления Status.
Замечания
Строка Bézier не проходит через свои контрольные точки. Контрольные точки действуют как магниты, вытягивая кривую в определенных направлениях, чтобы повлиять на то, как сгибы линии Bézier.
Примеры
В следующем примере выполняется рисование кривой Bézier.
VOID Example_DrawBezier3(HDC hdc)
{
Graphics graphics(hdc);
// Set up the pen and curve points.
Pen greenPen(Color(255, 0, 255, 0));
int startPointx = 100;
int startPointy = 100;
int ctrlPoint1x = 200;
int ctrlPoint1y = 10;
int ctrlPoint2x = 350;
int ctrlPoint2y = 50;
int endPointx = 500;
int endPointy = 100;
//Draw the curve.
graphics.DrawBezier(
&greenPen,
startPointx,
startPointy,
ctrlPoint1x,
ctrlPoint1y,
ctrlPoint2x,
ctrlPoint2y,
endPointx,
endPointy);
//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 |
См. также
Методы drawBeziers