Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 25.01.2011, 00:54
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 1  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
По умолчанию Как пересчитать цвет для его усиления-затемнения

Здравствуйте
есть цвет, к примеру 0xFF0000
как мне пересчитать его, чтобы он стал немного темнее, подскажите, будьте добры

Старый 25.01.2011, 01:02
bav вне форума Посмотреть профиль Отправить личное сообщение для bav Найти все сообщения от bav
  № 2  
Ответить с цитированием
bav
 
Аватар для bav

Регистрация: Oct 2010
Сообщений: 1,049
Отправить сообщение для bav с помощью ICQ
Что значит пересчитать? Чтобы красный стал темнее, следует уменьшить значение соответствующего канала, например 0xAA0000.

Старый 25.01.2011, 01:05
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 3  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Например умножить на *0.75

Старый 25.01.2011, 01:11
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 4  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
Я думал разложить на RGB и по отдельности отнять по 10-ке, к примеру, от значений каждого из каналов, а потом заново "собрать" измененный цвет, я вот что подразумевал под "пересчитать"

Psycho Tiger, спасибо, попробую
bav, дело в том что цвет может быть любым, и я не могу знать точно какой из каналов менять

P.S. Умножение цвета на дробь, к сожалению, не дает затемненного исходного цвета
Изображения
 


Последний раз редактировалось djyamato; 25.01.2011 в 01:15.
Старый 25.01.2011, 04:05
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 5  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
Код AS3:
var LineColor=0xFF0000;
var red:uint  =(LineColor & 0xff0000) >>> 16;
var green:uint  =(LineColor & 0xff00) >>> 8;
var blue:uint  =(LineColor & 0xff);
 
red=red*0.75;
green=green*0.75;
blue=blue*0.75;
 
red <<= 16; // xxxxxxxx 00000000 00000000
green <<= 8;  //           xxxxxxxx 00000000
blue = blue;   //                     xxxxxxxx
 
ResampledLineColor= red | green | blue;
Результат правильный получается
Изображения
 


Последний раз редактировалось djyamato; 25.01.2011 в 04:11.
Старый 25.01.2011, 13:29
incvizitor вне форума Посмотреть профиль Отправить личное сообщение для incvizitor Найти все сообщения от incvizitor
  № 6  
Ответить с цитированием
incvizitor
 
Аватар для incvizitor

блогер
Регистрация: Sep 2008
Адрес: Менск
Сообщений: 586
Записей в блоге: 1
Отправить сообщение для incvizitor с помощью Skype™
Цитата:
Например умножить на *0.75
получиться BF4000.
__________________
ranga

Старый 25.01.2011, 13:38
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 7  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Я имел ввиду умножить каждый канал.

Старый 25.01.2011, 13:45
passertm вне форума Посмотреть профиль Отправить личное сообщение для passertm Найти все сообщения от passertm
  № 8  
Ответить с цитированием
passertm
[+1 28.12.10]
[+1 29.12.10]
 
Аватар для passertm

Регистрация: Aug 2006
Сообщений: 107
Проблема простого умножения на друбное в том что если к примеру 0х30000(темно красный без оттенков других цветов) умножить на 0.5 получается 0х15000(т.е. цвет с оттенком зеленого). Так что думаю правильнее всего умножать каналы по отдельности, так как вы и сделали.

Старый 25.01.2011, 14:02
djyamato вне форума Посмотреть профиль Отправить личное сообщение для djyamato Посетить домашнюю страницу djyamato Найти все сообщения от djyamato
  № 9  
Ответить с цитированием
djyamato
 
Аватар для djyamato

Регистрация: Feb 2006
Сообщений: 884
Записей в блоге: 2
Отправить сообщение для djyamato с помощью ICQ Отправить сообщение для djyamato с помощью Skype™
Спасибо всем за советы, хорошо что вопрос вешился.
Я не умел "раскладывать" цвет на каналы и обратно "собирать" его.

P.S. Кстати, я делаю обводку затемненным цветом при помощи фильтра Glow (inner=true), есть ли какой-нибудь другой способ ?

Старый 04.02.2011, 13:59
Psycho Tiger вне форума Посмотреть профиль Отправить личное сообщение для Psycho Tiger Найти все сообщения от Psycho Tiger
  № 10  
Ответить с цитированием
Psycho Tiger
 
Аватар для Psycho Tiger

блогер
Регистрация: Jun 2005
Адрес: Господи пожалуйста не Новосибирск
Сообщений: 6,598
Записей в блоге: 17
Можно рисовать менее тонкой обводкой по более толстой =)
По поводу битов и байтов, как вычислять цвет и как это работает.

Создать новую тему Ответ Часовой пояс GMT +4, время: 23:24.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 23:24.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.