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

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

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

Регистрация: May 2013
Адрес: (0, 0)
Сообщений: 176
Question Как применить преобразования или tween к матрице клипа для BitmapData?

[тема закрыта]

Как применить преобразования или tween к матрице клипа если отрисовка в BitmapData происходит каждый кадр?
Код AS3:
function EnterFrameL(event:Event):void
{
  clip_BitmapData.draw(clip, clip_Matrix, null, null, null, true);
}
Если делать как обычно или даже
TweenMax.to(clip, 10, {transformMatrix:{rotation :15}});
Код AS3:
function EnterFrameL(event:Event):void
{
  clip.rotation ++;
  clip_BitmapData.draw(clip, clip_Matrix, null, null, null, true);
}
То каждый кадр свойство rotation клипа прибавляется к текущему свойству rotation и он начитает набирать обороты как бешеный.

Если так, то пропадает возможность применять tween.
Код AS3:
function EnterFrameL(event:Event):void
{
  clip.rotation = 1;
  clip_BitmapData.draw(clip, clip_Matrix, null, null, null, true);
}
--- --- --- --- ---

#Решено!
Работаем с трансформациям клипа как обычно. Даже можем применить tween. Далее задаем нашей матрице обект Matrix самого клипа.

Код AS3:
clip.rotation++;
clip.scale++;
 
clip_Matrix = clip.transform.matrix;


Последний раз редактировалось zCHESNOKz; 21.12.2015 в 23:30.
Старый 21.12.2015, 23:05
faraday вне форума Посмотреть профиль Отправить личное сообщение для faraday Найти все сообщения от faraday
  № 2  
Ответить с цитированием
faraday
 
Аватар для faraday

Регистрация: Apr 2009
Сообщений: 409
в чем именно заключается задача? вращать клип? тогда зачем отрисовка в битмап? матрицу да, вращать не получится. анимируйте отдельно параметр вращения. и каждый кадр резетьте матрицу с ним.

Старый 21.12.2015, 23:22
zCHESNOKz вне форума Посмотреть профиль Отправить личное сообщение для zCHESNOKz Посетить домашнюю страницу zCHESNOKz Найти все сообщения от zCHESNOKz
  № 3  
Ответить с цитированием
zCHESNOKz
 
Аватар для zCHESNOKz

Регистрация: May 2013
Адрес: (0, 0)
Сообщений: 176
Цитата:
Сообщение от faraday Посмотреть сообщение
в чем именно заключается задача? вращать клип? тогда зачем отрисовка в битмап?
Задача в работе с трансформациями клипа который отрисовывается в BitmapData каждый кадр. А чего нельзя вращать клип если я его русую потом в BitmapData?


Цитата:
Сообщение от faraday Посмотреть сообщение
матрицу да, вращать не получится.
Код AS3:
var angle:int = 2;
clip_Matrix.rotate( (Math.PI * angle) / 180 ); // вращение матрицы
Цитата:
Сообщение от faraday Посмотреть сообщение
анимируйте отдельно параметр вращения. и каждый кадр резетьте матрицу с ним.
я вроде бы написал, что так не работает

Код AS3:
 
function EnterFrameL(event:Event):void
{
  clip.rotation ++;
  clip_BitmapData.draw(clip, clip_Matrix, null, null, null, true);
}
Добавлено через 7 минут

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

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

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


 


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


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