crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Карта градиентов
zss
  опции профиля:
сообщение 16.6.2009, 13:26
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 112
Регистрация: 9.6.2009
Пользователь №: 815

Спасибо сказали: 0 раз(а)




Репутация:   0  


Есть значения в диапазоне от 0 до 100;

Для каждого диапазона (0-24, 2-49, 50-74, 75-100) необходимо задать градиент.
Для этого приходится проверять значение и вычислять градиент в зависимости от значения.

Можно ли как организовать карту градиентов, чтоб по приходящему значению сразу получать градиент ?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
kwisp
  опции профиля:
сообщение 16.6.2009, 13:34
Сообщение #2


астарожна ынтжинэр
*****

Группа: Участник
Сообщений: 1404
Регистрация: 26.11.2008
Из: ТаганрогРодинаЧехова
Пользователь №: 435

Спасибо сказали: 113 раз(а)




Репутация:   23  


zss,
один раз заполни контейнер (QVector QMap QHash и т.д.) и при необходимости доставай градиент по индексу.
хотя у тебя 4 значения градиента почему не подходит просто узнать в каком интервале число и вернуть градиент, если планируется увеличить кол во значений то контейнер поможет а так можно и без контейнера.
static const QLinearGradient& getGradient(uint x)
{
       static const QLinearGradient mass[] = {
              QLinearGradient(), QLinearGradient (), QLinearGradient (), QLinearGradient ()  
       };
return mass[x>49?(x>74?3:2):x>24?1:0]; // где мэжик нумбер -- это номер интервала
}


Сообщение отредактировал kwisp - 16.6.2009, 13:45
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 1.12.2024, 15:16