Graphics::D rawBezier(constPen*,INT,INT,INT,INT,INT,INT,INT,INT,INT) (gdiplusgraphics.h)
Метод Graphics::D rawBezier рисует сплайн Безье.
Синтаксис
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
Тип: константное перо*
Указатель на перо, используемое для рисования сплайна Безье.
[in] x1
Тип: INT
Целое число, указывающее координату X начальной точки сплайна Безье.
[in] y1
Тип: INT
Целое число, указывающее координату Y начальной точки сплайна Безье.
[in] x2
Тип: INT
Целое число, указывающее координату X первой контрольной точки сплайна Безье.
[in] y2
Тип: INT
Целое число, указывающее координату Y первой контрольной точки сплайна Безье
[in] x3
Тип: INT
Целое число, указывающее координату X второй контрольной точки сплайна Безье.
[in] y3
Тип: INT
Целое число, указывающее координату Y второй контрольной точки сплайна Безье.
[in] x4
Тип: INT
Целое число, указывающее координату X конечной точки сплайна Безье.
[in] y4
Тип: INT
Целое число, указывающее координату Y конечной точки сплайна Безье
Возвращаемое значение
Тип: Состояние
В случае успешного выполнения метода возвращается ОК, который является элементом перечисления Status .
Если метод завершается сбоем, он возвращает один из других элементов перечисления Status .
Комментарии
Сплайн Безье не проходит через свои контрольные точки. Контрольные точки действуют как магниты, вытягивая кривую в определенных направлениях, чтобы повлиять на то, как сплайн Безье изгибается.
Примеры
В следующем примере рисуется кривая Безье.
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 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | gdiplusgraphics.h (включая Gdiplus.h) |
Библиотека | Gdiplus.lib |
DLL | Gdiplus.dll |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по