Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Системное программирование и WinAPI > Нарисовать градиент (GDI+) |
Автор: suxxor 18.1.2012, 00:23 | ||
Нужно нарисовать градиент как на картинке из .NET на C++ (WINAPI) Оригинал:
Результат: ![]() http://www.codeproject.com/KB/IP/3G_Modem_Internet_Dialer.aspx |
Автор: GremlinProg 18.1.2012, 08:17 |
на C++ (WINAPI) для этого есть GradientFill https://www.google.com/search?q=using+GradientFill |
Автор: suxxor 18.1.2012, 11:15 |
GremlinProg, как с помощью этой ф-и сделать как на картинке? |
Автор: GremlinProg 18.1.2012, 11:23 |
как сделать сам градиент на все окно, или разукрасить градиентом график? Добавлено через 3 минуты и 36 секунд если первое, то по ссылке есть примеры если второе, то существует несколько способов, например: отрисовать сначала график в путь, выбрать его в HDC ( SelectClipPath ), после чего, отрисовать серый градиент на фоне синего градиента Добавлено через 13 минут по моему, тут даже серого градиента нет, это просто 2 кисти: upload и download, тогда и путей не надо, просто отрисовка графика на фоне градиента |
Автор: suxxor 18.1.2012, 11:48 | ||
Мне нужен только градиент: Кажется оно:
как это с GradientFill сделать? |
Автор: GremlinProg 18.1.2012, 12:41 | ||||
ну, по первой же ссылке как раз нужный код:
vert [0] .x, vert [0] .y - координата левого-верхнего угла прямоугольника vert [1] .x, vert [1] .y - координата правого-нижнего угла прямоугольника стоит только отметить, что цветовые компоненты здесь 16-битные, т.е. чтобы перевести 8-битные к 16-битным, требуется масштабирование:
|
Автор: Dem_max 18.1.2012, 16:08 |
Ты же сам код функции привел, в чем проблема то ? |
Автор: suxxor 18.1.2012, 17:50 | ||
Dem_max, там .NET <censure> Короче написал, если что исправьте:
|
Автор: Dem_max 19.1.2012, 04:00 | ||
Вот твоя функция на С++ для рисования того что тебе нада. Взял с первого поста.
|