Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Генерация соседнего цвета
 
 автор: AlexDIXI   (15.08.2012 в 23:37)   письмо автору
 
 

Добрый ночи!
Попал в тупик, надо задать цвет скрипту. А он в свою очередь отдает соседний цвет. Код может быть цифровой, буквенный, или в смешку.

#d50000
#dbdbdb
#323232
#2f558d

и т.п.
Как определить соседний цвет. Помогите.. Спасибо!

  Ответить  
 
 автор: Владимир55   (16.08.2012 в 00:09)   письмо автору
 
   для: AlexDIXI   (15.08.2012 в 23:37)
 

А что такое "соседний цвет"?

  Ответить  
 
 автор: confirm   (16.08.2012 в 00:14)   письмо автору
 
   для: AlexDIXI   (15.08.2012 в 23:37)
 

А что такое соседний цвет? Есть цветовой круг на котором можно получить дополнительный цвет, который имеет определение. Есть аналоговая цветовая схема описывающая аналоговые два цвета, расположенные рядом друг с другом. А соседний, это насколько далек/близок?

  Ответить  
 
 автор: AlexDIXI   (16.08.2012 в 00:16)   письмо автору
 
   для: confirm   (16.08.2012 в 00:14)
 

Вы меня разыгрываете? Соседний цвет. Немного светлее или темнее основного цвета.

  Ответить  
 
 автор: confirm   (16.08.2012 в 00:22)   письмо автору
 
   для: AlexDIXI   (16.08.2012 в 00:16)
 

Я не разыгрываю. Вы уж прочтите что либо соответствующее, а потом уже терминами пуляйте. )
Немного светлее или темнее основного цвета - это насколько "на немного"?
Вот так можно получит безопасную палитру. Она строится согласно определенному расстоянию цветов друг от друга.
<?
$s 
'<table cellspacing="1" cellpadding="0"><tr>';
$g $m $r 0;

for(
$i=0$i<216$i++) {
   if(
$i && !($i 6)) $g++;
   if(
$g>2$g 0;
   if(
$i && !($i 18)) {
      
$m++; $s .= '</tr><tr>';
   } 
   if(
$m>1$m 0;
   if(
$i && !($i 36)) $r++;
   
$k = ($i 6) * 51 26112*$g 13056*$m 3342336*$r;
   
$k dechex($k);
   
$k substr('000000'06-strlen($k)).$k;
   
$s .= '<td bgcolor=#'.$k.'>&nbsp;&nbsp;&nbsp;</td>';
}
$s .= '</tr></table>';
echo 
$s;
Вот определитесь со своим "на немного" и по такому же принципу можете строить свою палитру. Если я предполагаю правильно, что вы о аналоговой цветовой схеме речь ведете, то в этом случае при задании цветов лучше использовать цветовую модель HSB, с последующей конвертацией цвета в RGB модель.

  Ответить  
 
 автор: AlexDIXI   (16.08.2012 в 10:17)   письмо автору
 
   для: confirm   (16.08.2012 в 00:22)
 

уважаемый зачем усложнять? Цвета коды разные. Я на входе получаю #dbdbdb или #000000, #d50000 и мне надо слегка изменить цвет. С уважением..

  Ответить  
 
 автор: confirm   (16.08.2012 в 12:35)   письмо автору
 
   для: AlexDIXI   (16.08.2012 в 10:17)
 

Читайте и вникайте, и когда определитесь, что такое "коды разные", тогда и задавайте вопрос?
Если вы сможете заставить свой скрипт понимать и выполнять значение "слегка", я вас выдвину на Нобелевскую премию.
Что касается усложнить, надо полагать, что вы о HSB. Открывайте, например, фотошоп, в котором вы можете наблюдать значения цветовых компонентов в разных цветовых моделях. Сравните изменения их при перемещении слайдера по цветовому квадрату. HSB, это не усложнение, это облегчение для операций с цветом подобных вашим.

  Ответить  
 
 автор: AlexDIXI   (16.08.2012 в 14:14)   письмо автору
 
   для: confirm   (16.08.2012 в 12:35)
 

Мне просто не хотелось изучать строение машины, я хочу сесть и поехать. Что куда нажимать, чтобы это получалось.
Мне не принципиально, просто утемнение или осветление оригинального цвета. Мне важен результат. Дали конкретный код ,по стандартам css. Я примеры приводил выше. На выходи получаем что-то соседнее, по цвету. Если это невозможно так и скажите чтобы я искал другой выход. А не тыкать меня в научные строения умов великих.

  Ответить  
 
 автор: confirm   (16.08.2012 в 14:43)   письмо автору
 
   для: AlexDIXI   (16.08.2012 в 14:14)
 

А если я вас попрошу указать мне число близкое 2, но не скажу на сколько близкое, вы сможете его назвать?
Чтобы сеть и поехать, надо учиться прежде. Вот так и в программировании - ваше "хочу", это еще еще повод языку выполнить ваш каприз. Хотите, значит объясняйте чего конкретно, а не можете, значит только вы сами знаете, чего хотите, ну тогда сами и решайте.
Обидчивые какие, блин, объяснить толком не могут чего нужно, еще привередничают.

  Ответить  
 
 автор: AlexDIXI   (16.08.2012 в 15:11)   письмо автору
 
   для: confirm   (16.08.2012 в 14:43)
 

Ни хотел никого обидеть. И я не обижался на Вас. Просто не понятно ваше упорство доказать что я не понимаю чего я хочу. Я на ваш вопрос могу дать ответ. Если вы попросите из числа 2 дать близкие числа то это будет 0,1 или 3,4.

  Ответить  
 
 автор: confirm   (16.08.2012 в 15:48)   письмо автору
 
   для: AlexDIXI   (16.08.2012 в 15:11)
 

А с чего вы решили, что я хочу 0,1 или 3,4? Может я хочу -2 и 3.5.
Я вам уже вроде бы все сказал и показал пример.
Если вам надо получить цвета от и до, и вы знаете "насколько от", линейно или нет распределяются и т.д., значит делайте.
Я человек, я еще как-то могу уловить смысл значения "немножко, чуть-чуть...", а программа выполняется на компьютере, а компьютер, это машина, она не понимает чувств, абстрактных понятий, она работает только с конкретными значениями.
Вы про эти конкретные значения ни слова. Потому и.... в общем то, что я уже говорил выше.

  Ответить  
 
 автор: AlexDIXI   (16.08.2012 в 16:48)   письмо автору
 
   для: confirm   (16.08.2012 в 15:48)
 

Вы просто можете сделать пример, от и до. Как получится. Мне не принципиально. Можно взять за основу 2 и берем 0, 1 или 3,4. Можно как-то этот алгоритм применить и на css цвете. Но цвет в том и дело что разный, то с цифрами то с буквами то вперемешку.

  Ответить  
 
 автор: confirm   (16.08.2012 в 16:52)   письмо автору
 
   для: AlexDIXI   (16.08.2012 в 16:48)
 

Нет не могу сделать, потому, что не понимаю ваших абстрактных запросов. В этом я солидарен с машиной.
Пишите сами, выкладывайте свой код сюда, если будут проблемы. Может по нему будет более понятно то, что словами вы описать не можете.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования