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

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

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

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
По умолчанию Растягивание BitmapData

Нужно растянуть битмапдату по x или y.
Как это сделать не создавая объекта Bitmap?
Т.е. вариант с использованием
Код AS3:
/**
		 * Растягивание битмапдаты
		 * @param	bitmapData 		исходное изображение
		 * @param	w				ширина
		 * @param	h				высота		
		 * @return					растянутое изображение
		 */
		public static function stretchBitmap(bitmapData:BitmapData,w:int,h:int):BitmapData
		{
			var ret:BitmapData = new BitmapData(w, h,true,0);
			var bitmap:Bitmap = new Bitmap(bitmapData);
			var matrix:Matrix = new Matrix();
			var sx:Number = w / bitmapData.width;
			var sy:Number = h / bitmapData.height;
			matrix.scale(sx, sy);
			ret.draw(bitmap,matrix);
			return ret;
		}
не подходит (по религиозным соображениям )
Может кто предложит алгоритм растягивания основанный на copyPixels?

Ps:модераторы: измените пожалуйста название темы - очепятка.
__________________
Отряд Котовскага


Последний раз редактировалось Котяра; 18.09.2009 в 12:07.
Старый 18.09.2009, 12:07
flash33 вне форума Посмотреть профиль Отправить личное сообщение для flash33 Найти все сообщения от flash33
  № 2  
Ответить с цитированием
flash33
 
Аватар для flash33

Регистрация: Nov 2005
Сообщений: 1,155
Если такой алгоритм и есть, он очень долгий для флеш, возможно в шейдере это будет работать быстрее, но если не заморачиваться, то трансформ самое то. А что за религия такая строгая?

Старый 18.09.2009, 12:10
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 3  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
Религиозный вопрос в создании лишнего экземпляра bimap. Пока пусть будет как есть.. интерфейс ф-ции не поменяется в дальнейшем.. и хорошо)
__________________
Отряд Котовскага

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

Регистрация: Nov 2005
Сообщений: 1,155
А что битмап, каши просит? Создали его локально, локально уничтожили.

Старый 18.09.2009, 12:16
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 5  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
А почему не сразу новый bitmapData с draw и матрицей? А copyPixels это
Цитата:
Представляет собой процедуру быстрой обработки точек изображений без растяжения, поворота и цветовых эффектов.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 18.09.2009, 12:47
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 6  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
Цитата:
Сообщение от iNils Посмотреть сообщение
А почему не сразу новый bitmapData с draw и матрицей?
хм.. в описании ф-ции draw написано следующее:
Цитата:
Экранный объект или объект BitmapData для рисования объекта BitmapData. Классы DisplayObject и BitmapData реализуют интерфейс IBitmapDrawable
.

То, что можно использовать битмапдату сразу, я как-то упустил)))))
вопрос и соответственно сам топик самоуничтожились)
Код AS3:
               /**
		 * Растягивание битмапдаты
		 * @param	sourceBitmapData 		        исходное изображение
		 * @param	w						ширина
		 * @param	h						высота		
		 * @return							растянутое изображение
		 */
		private static function stretchBitmap(sourceBitmapData:BitmapData,w:int,h:int):BitmapData
		{
			var ret:BitmapData = new BitmapData(w, h,true,0);
			var matrix:Matrix = new Matrix();
			var sx:Number = w / sourceBitmapData.width;
			var sy:Number = h / sourceBitmapData.height;
			matrix.scale(sx, sy);
			ret.draw(sourceBitmapData,matrix);
			return ret;
		}
__________________
Отряд Котовскага

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

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

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


 


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


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