анимация геом искажений чайнику в АС ? @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 13 ] 
*   Список форумов / Технологии изображения / Flash » ответить » создать топик « | »
Автор Сообщение
eddy444 Муж.
Модератор
315
Сообщения: 14467
Зарегистрирован: 05.05.03
Откуда: NSK
Заголовок сообщения: анимация геом искажений чайнику в АС ?
Сообщение Добавлено: 24 Апрель 2007, 09:46:25 
Попал в руки такой исходник
http://flashmaker.ru/tmp/test_distortBmp.html

Код:
//подгружаем АС классы с описанием собсно функции дисторта
import flash.display.BitmapData;
import flash.geom.*;

//тут аттачатся управляющиехэндлеры, до этого момента понятно
var face =new MovieClip("face",1);
this.attachMovie("point","0",500);
this.attachMovie("point","1",501);
this.attachMovie("point","2",502);
this.attachMovie("point","3",503);

this["0"]._x = 100;
this["0"]._y = 100;

this["1"]._x = 300;
this["1"]._y =100;

this["2"]._x = 300;
this["2"]._y =300;

this["3"]._x =100;
this["3"]._y =300;

//задание параметров дисторта и его включение через драг хэндлеров
var bmp = BitmapData.loadBitmap('cat');
var pic=new DistortBitmap(this,bmp,'pic_mc',5,5);
var root=this;
distort=function(){
   for(var j=0,z=[];j<4;j++)z.push(new Point(root[j]._x,root[j]._y));
   pic.distort(z);
}


pPress=function(){   this.startDrag();
   root.onEnterFrame=distort;
}
pRelease=function(){
   stopDrag();
   delete root.onEnterFrame;
}
for(var i=4;i--;){
   this[i].onPress=pPress;
   this[i].onRelease=this[i].onReleaseOutside=pRelease;
}
distort();


а вот что нужно мне - чтоб хэндлеры я мог анимировать на таймлайне твином, ну не буквально - пусть будет анимация по пути каких то мувиков - как тот, что колбасится на заднем фоне, и хэндлеры берут с него координаты. Не могу допетрить как это сделать - как вообще выйти на хэндлер?
Возможно есть и более прямое решение задачи?
Eduard Муж.
участник
61
Сообщения: 1629
Зарегистрирован: 24.09.03
Откуда: St.Petersburg , Moscow
Сообщение Добавлено: 24 Апрель 2007, 10:28:24 
попробуй вниз добавить код
Код:
clip.onEnterFrame = function() {_root["0"]._x++}
_root.onEnterFrame=distort();

будет ли двигаться хендлер ? если да, то потом делаешь четыре мувика с анимацией и в этой функции присваиваешь координаты мувиков хендлерам.
eddy444 Муж.
Модератор
315
Сообщения: 14467
Зарегистрирован: 05.05.03
Откуда: NSK
Сообщение Добавлено: 24 Апрель 2007, 13:04:22 
Неа.
вообще не пойму как до хэндлера добратся вроде как они поименованы
1
2
3
4
но никак не выводятся их кооринаты, к примеру
1._x
_root.1._x - по всякому пробовал
Eduard Муж.
участник
61
Сообщения: 1629
Зарегистрирован: 24.09.03
Откуда: St.Petersburg , Moscow
Сообщение Добавлено: 24 Апрель 2007, 13:42:17 
а так: trace(_root["0"]._x)

вобще странно что имена клипов цифры, может стоить переделать код, чтобы имена были: h1, h2, h3, h4
eddy444 Муж.
Модератор
315
Сообщения: 14467
Зарегистрирован: 05.05.03
Откуда: NSK
Сообщение Добавлено: 24 Апрель 2007, 16:34:27 
спасибо заработало, не шарю в формах записи\обращщения к элементам массива

this.onEnterFrame = function() {_root["1"]._x= anim._x
_root["1"]._y= anim._y
distort();
}
eddy444 Муж.
Модератор
315
Сообщения: 14467
Зарегистрирован: 05.05.03
Откуда: NSK
Сообщение Добавлено: 24 Апрель 2007, 16:38:23 
теперь вопрос номер 2, как мне вектороную картинку вместо этой вставить :) BitmapData - темный лес.
В примере ПНГ сразу берется из библиотеки.
Eduard Муж.
участник
61
Сообщения: 1629
Зарегистрирован: 24.09.03
Откуда: St.Petersburg , Moscow
Сообщение Добавлено: 24 Апрель 2007, 17:10:54 

eddy444 писал(а):
спасибо заработало, не шарю в формах записи\обращщения к элементам массива

this.onEnterFrame = function() {_root["1"]._x= anim._x
_root["1"]._y= anim._y
distort();
}

да надо было мне сразу так написать.


eddy444 писал(а):
теперь вопрос номер 2, как мне вектороную картинку вместо этой вставить :) BitmapData - темный лес.
В примере ПНГ сразу берется из библиотеки.


ну может просто в библиотеку пнг свою положить …
а так надо видеть код чтобы точно ответить.
eddy444 Муж.
Модератор
315
Сообщения: 14467
Зарегистрирован: 05.05.03
Откуда: NSK
Сообщение Добавлено: 24 Апрель 2007, 17:22:33 
ПНГ уже лежит в библиотеке с linkage "cat". А вот векторный символ вместо него я поставить не могу.
Код в самом флэше я привел полностью.
.as ку подгружаемую с самим преобразованием - не знаю, удобно ли в форум.
http://www.flashmaker.ru/tmp/DistortBitmap.as
Eduard Муж.
участник
61
Сообщения: 1629
Зарегистрирован: 24.09.03
Откуда: St.Petersburg , Moscow
Сообщение Добавлено: 25 Апрель 2007, 07:30:29 
Можно сделать так: перед исполнением var bmp = BitmapData.loadBitmap('cat'); клип с вектором перевести в битмап дату и положить ее в библиотеку под нужным именем.
Может кто подскажет как, я знаю здесь есть люди которые с битмап датой на "ты" :wink:
Мигель Муж.
участник
75
Сообщения: 1453
Зарегистрирован: 09.01.04
Откуда: http://design-cafe.ru
Сообщение Добавлено: 25 Апрель 2007, 08:39:27 
Чтобы перевести векторный клип в битмапдату:

Код:
// на сцене (или за сценой - где угодно) имеем клип mc
import flash.display.BitmapData
var bmp:BitmapData = new BitmapData(mc._width,mc._height, true, 0x00000000);
bmp.draw(mc);


Теперь битмап можно всnавлять в любые мувиКлипы методом attachBitmap()
@st@l@vist@
участник
70
Сообщения: 1606
Зарегистрирован: 20.03.03
Откуда: St.Petersburg
Сообщение Добавлено: 25 Апрель 2007, 12:12:29 
eddy444, у nuran'а спроси :)

http://nuran.org/lab/flash/0003.htm

Или тут http://silin.fatal.ru/AS2/index.html

p.s.: Вообще исходников этого дела, под 6-ку много. Просто вектор, без BitmapData, если тебе еще и анимация нужна.
eddy444 Муж.
Модератор
315
Сообщения: 14467
Зарегистрирован: 05.05.03
Откуда: NSK
Сообщение Добавлено: 25 Апрель 2007, 12:33:59 
@st@l@vist@, да именно , под 6ку как выяснилось и нужно, и именно вектор с анимацией (логотипы "в 3д" летать должны,) а мой исходник 8рочный.
Но принцип то универсальный - клип разбивается масками на треугольники и каждый треугольник скэйлится и дистортится обычно - без перспективы, а в сумме чем больше треугольников тем более гладко и похоже на перспективное.
eddy444 Муж.
Модератор
315
Сообщения: 14467
Зарегистрирован: 05.05.03
Откуда: NSK
Сообщение Добавлено: 25 Апрель 2007, 15:50:05 
ага - мой исходник отсюда и растет
http://silin.fatal.ru/AS2/index.html
но под 6ку для вектора только простейшие дисторты на 2 трегуольника получаются...
*   Список форумов / Технологии изображения / Flash « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 13 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100