C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Алгоритм градиента, Проблема с алгоритмом градиента
Pirs
Отправлено: 02.01.2004, 16:12


Дежурный стрелочник

Группа: Участник
Сообщений: 39



Есть такой компонент Background в библиотеке АВС.Он рисует градиентную заливку. Мне нужна такая же заливка на своей Bitmap, но этот компонент туда не вставишь и его свойства Canvas и Bitmap не доступны, что бы можно было просто скопировать его градиент. Написал свой алгоритм, основные цвета передает точно так же как и BacкGround, НО видна заметная лесенка на переходе цветов, а на компоненте все выглядит идеально гладко. Посмотрел через .BMP "срез" цветов у себя и в компоненте. Оказалось у меня цвета идут например так: 111111222222333333444444, а на компоненте участок с такими же установками выглядит так: 111121 212232 323343 434444 и т.д. То есть края как бы смешиваются с соседями и границы смазываются. Проблема в том, что параллельная линия градиента на компоненте "смазывает" границы немного по другому, то есть простой линией одного цвета полоску градиента уже не нарисуешь. Может кто-то подскажет, где взять алгоритм для 16-bit цвета(5 бит на один цвет), или как добраться до свойства Canvas у компонента.

Вернуться в Вопросы программирования в C++Builder