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

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

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

Регистрация: Jan 2010
Сообщений: 62
По умолчанию Изменение контраста и Яркости

Здравствуйте.

На active.tutsplus.com есть тутор, рассказывающий о изменении яркости. Я взял от туда код (и .fla) и изменил его немного (нагуглив, что кроме оффсета есть Multiplier). Теперь в нём есть псевдо-контраст. Почему псевдо? Потому, что он работает совсем не так, как ожидалось и хотелось...
http://**********/1297303

Есть возможность сделать более-менее реалистичное изменение контраста, но тогда вместе множителем придётся изменять и смещение, следовательно будет только один ползунок. (независимости не будет)

Код AS3:
package 
{
	import flash.display.MovieClip;
	import flash.display.Sprite;
	import fl.events.SliderEvent;
	import flash.geom.ColorTransform;
 
	public class Main extends Sprite
	{
		var colorTransform:ColorTransform = new ColorTransform();
 
		public function Main():void
		{
			panel.slider.addEventListener(SliderEvent.CHANGE, updateBrightness);
			panel.cSlider.addEventListener(SliderEvent.CHANGE, updateContrast);
		}
 
		private function updateBrightness(e:SliderEvent):void
		{
			colorTransform.redOffset = e.value;
			colorTransform.greenOffset = e.value;
			colorTransform.blueOffset = e.value;
 
			image.transform.colorTransform = colorTransform;
 
			panel.bValue.text = e.value;
		}
 
		private function updateContrast(e:SliderEvent):void
		{
			colorTransform.redMultiplier = colorTransform.greenMultiplier = colorTransform.blueMultiplier = e.value / 100;
 
			image.transform.colorTransform = colorTransform;
 
			panel.cValue.text = e.value;
		}
	}
}
Где-то слышал, что это можно сделать через color matrix, но не знаю как.

PS: Мне нужны два независимых ползунка.

Старый 02.04.2010, 16:54
VVall вне форума Посмотреть профиль Отправить личное сообщение для VVall Найти все сообщения от VVall
  № 2  
Ответить с цитированием
VVall

Регистрация: Feb 2009
Сообщений: 1,195
http://www.adobe.com/devnet/flash/ar...ations_04.html

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

Регистрация: Nov 2005
Сообщений: 148
Решил поделиться найденым:
http://www.greensock.com/as/docs/twe...ormPlugin.html
http://www.greensock.com/as/docs/twe...intPlugin.html

Старый 16.08.2012, 00:37
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 4  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
http://www.silin.su/#AS3/filters/color
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

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

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

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


 


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


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