|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
OpenGL - Линейная политра в RGB
У меня в программе надо сделать линейку окраска которой менялась бы от синего на одном конце к зелёному посередине и красному на другом конце плавно. Как это сделать в системе RGB никак ума не приложу.
Если кто сталкивался с такой проблеммой или знает как её решить, ПОДСКАЖИТЕ. |
#2
|
|||
|
|||
Надо использовать два линейных участка. Пример (на форме PaintBox1 высотой 511):
Код:
procedure TForm1.PaintBox1Paint(Sender: TObject); var I: Integer; begin for I:= 0 to 255 do begin PaintBox1.Canvas.Pen.Color:= RGB(0, I, 255-I); PaintBox1.Canvas.Polyline([Point(0, I), Point(PaintBox1.Width, I)]); end; for I:= 0 to 255 do begin PaintBox1.Canvas.Pen.Color:= RGB(I, 255-I, 0); PaintBox1.Canvas.Polyline([Point(0, 255+I), Point(PaintBox1.Width, 255+I)]); end; end; |