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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.12.2011, 11:20
Varlamov_AS вне форума Посмотреть профиль Отправить личное сообщение для Varlamov_AS Найти все сообщения от Varlamov_AS
  № 1  
Ответить с цитированием
Varlamov_AS

Регистрация: Dec 2011
Сообщений: 31
Question Цветовой ключ в AS3

Доброго времени суток.

Возник такой вопрос:
Есть ли в AS3 какое-либо подобие цветового ключа для Bitmap или BitmapData? Если да, то где можно про это почитать, если нет, то как можно сделать это программно?

Заранее спасибо.

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

блогер
Регистрация: Dec 2010
Сообщений: 237
Записей в блоге: 5
Вы имеете ввиду программное рисование всяких фракталов в bitmapData? Тогда попробуйте perlinNoise и матан вам в помощь
__________________
Дебаггер не предлагать

Старый 23.12.2011, 11:55
Varlamov_AS вне форума Посмотреть профиль Отправить личное сообщение для Varlamov_AS Найти все сообщения от Varlamov_AS
  № 3  
Ответить с цитированием
Varlamov_AS

Регистрация: Dec 2011
Сообщений: 31
Я плохо разбираюсь в графике, поэтому попробую сказать своими словами. Есть, к примеру, изображение. На нем, к примеру, нарисован какой-то человек, а задний фон - белый. Нужно сделать, чтобы задний белый фон заменялся фоном родительского объекта отображения.

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

блогер
Регистрация: Dec 2010
Сообщений: 237
Записей в блоге: 5
Код AS3:
color = bitmapData.getPixel(_x,_y);
if (color == 0xffffff) { bitmapData.setPixel32(_x,_y,0x00000000) }
__________________
Дебаггер не предлагать

Старый 23.12.2011, 13:06
goodguy вне форума Посмотреть профиль Найти все сообщения от goodguy
  № 5  
Ответить с цитированием
goodguy
Banned

Регистрация: Jan 2010
Адрес: РФ. Кемеровская область
Сообщений: 3,243
http://silin.su/#AS3/bitmap/bucket/bin

но поковыряться однозначно прийдется

Старый 23.12.2011, 13:16
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 6  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
Хм. Если Вам нужно заменить определенный цвет на прозрачный - то тут я вижу 2 решения:
1) заранее нарисовать с прозрачным фоном (подсказал Кэп)
2) написать шейдер на PixelBender, которому в параметр передавать цвет для замены

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

Старый 23.12.2011, 14:31
Varlamov_AS вне форума Посмотреть профиль Отправить личное сообщение для Varlamov_AS Найти все сообщения от Varlamov_AS
  № 7  
Ответить с цитированием
Varlamov_AS

Регистрация: Dec 2011
Сообщений: 31
Я попроовал методом threshold()
Код AS3:
_bitmap1 = Bitmap(_tempLoader.content);                    
                    _bitmapData = new BitmapData(_bitmap1.bitmapData.width, _bitmap1.bitmapData.height);
                    _bitmapData.threshold(_bitmap1.bitmapData, _bitmap1.bitmapData.rect, _tempPoint, ">", 0xFFFFFFEE, 0x00000000, 0xFFFFFFFF, true);
                    _bitmap2.bitmapData = _bitmapData;
                    _bitmap2.x = _bitmap1.width + 20;
                    _uiCont.addChild(_bitmap1);
                    _uiCont.addChild(_bitmap2);
вышло не очень:

поэтому решил делать просто с прозрачным фоном

Добавлено через 46 секунд

Старый 24.12.2011, 00:44
PainKiller вне форума Посмотреть профиль Отправить личное сообщение для PainKiller Найти все сообщения от PainKiller
  № 8  
Ответить с цитированием
PainKiller
 
Аватар для PainKiller

блогер
Регистрация: Sep 2011
Адрес: Москва
Сообщений: 533
Записей в блоге: 4
а блиттинг в вашем случае не подойдет? Вот по такому например рецепту (его кстати можно усложнить и заменять разные цвета):
http://active.tutsplus.com/tutorials...kground-color/

Старый 24.12.2011, 00:51
Vektor вне форума Посмотреть профиль Отправить личное сообщение для Vektor Найти все сообщения от Vektor
  № 9  
Ответить с цитированием
Vektor
 
Аватар для Vektor

Регистрация: May 2008
Адрес: Новокузнецк
Сообщений: 219
Записей в блоге: 1
А не проще, использовать (картинку.png) с альфа каналом.
__________________
Книги и желание лучшие учителя.

Старый 24.12.2011, 15:30
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 10  
Ответить с цитированием
in4core
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Vektor на самом деле фигня то интересная в плане - png без фона весит в разу больше чем его fналог jpg c однородным фоном. Поэтому думаю стоит написать класс для замены фона. Что в итоге может реально сократить место сайта, особенно если используются анимируемые 3д объекты без фона!!! Набор картинок как мувиклип, но при этом весщие немного - вы***** однако
__________________
Марк Tween

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

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

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


 


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


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