![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: May 2008
Сообщений: 476
|
Во! Вот щас Вы рассказали просто СУПЕР! Все точно и ясно.
Ща буду трудиться. Вопрос такой когда Вам это нужно?
__________________
Случайность, господа, это знаете ли непознанная необходимость. |
|
|||||
|
[+3 17.12.07]
[+3 04.04.08] Регистрация: Oct 2007
Сообщений: 42
|
Ого сколько этузиазма...
![]() Прям не по себе стало - стыдновато... Да особо не горит... после 3х днех безрезультатных мытарств совсем что-то расстроился ... как получиться.... по возможности...СПАСИБИЩЕ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
|
|||||
|
В исходниках не нашел циклического движения.
Вот пример.
__________________
Книги и желание лучшие учителя. |
|
|||||
|
[+3 17.12.07]
[+3 04.04.08] Регистрация: Oct 2007
Сообщений: 42
|
Спасибо. Примерчик полезный. Но пока так и не понял как в него все разом засунуть
- блюры, альфы... |
|
|||||
|
Регистрация: May 2008
Сообщений: 476
|
Уважаемый Blacks!
Не мог выйдти раньше на связь - Интернет заглючил (WI-FI). Поэтому, если эта тема еще актуальна предлагаю свой вариант решения указанной Вами проблемы. Вот он: import flash.filters.BlurFilter;
//Задаем начальную и конечную координату движения мува
var begX:Number = 400;
var endX:Number = 200;
//Задаем начальное и конечное время первой фазы (в миллисекундах)
var begTime_1:Number = 0;
var endTime_1:Number = 2000;
//Задаем начальное и конечное время второй фазы (в миллисекундах)
var begTime_2:Number = 2000;
var endTime_2:Number = 4000;
//Задаем начальные и конечное время третьей фазы (в миллисекундах)
var begTime_3:Number = 4000;
var endTime_3:Number = 6000;
//Задаем качество Блюра
var quality:Number = 2;
//Рассчитываем уравнение линейного движения мува в зависимости от времени (т.е. X от Time)
//Тангенс угла наклона прямой
var k0:Number = (endX-begX)/(endTime_3-begTime_1);
//Свободный член (не половой, повторяю не половой 8-))
var b0:Number = begX-k0*begTime_1;
//--------------------------------------------------------------
//фаза 1
//--------------------------------------------------------------
//Задаем начальные и конечные значения блюра 1 фазы
var begBlur_1:Number = 10;
var endBlur_1:Number = 0;
//Рассчитывем линейные коэффициенты уравнений изменения Блюра
//Тангенс угла наклона прямой
var k1:Number = (endBlur_1-begBlur_1)/(endTime_1-begTime_1);
//Свободный член (что это Вы уже знаете)
var b1:Number = begBlur_1-k1*begTime_1;
//Задаем начальные и конечные значения альфы
var begAlpha_1:Number = 0;
var endAlpha_1:Number = 100;
//Рассчитывем линейные коэффициенты уравнений изменения альфы
//Тангенс угла наклона прямой
var k2:Number = (endAlpha_1-begAlpha_1)/(endTime_1-begTime_1);
//Свободный член
var b2:Number = begAlpha_1-k2*begTime_1;
//--------------------------------------------------------------
//фаза 3
//--------------------------------------------------------------
//Задаем начальные и конечные значения блюра 3 фазы
var begBlur_3:Number = 0;
var endBlur_3:Number = 10;
//Рассчитывем линейные коэффициенты уравнений изменения Блюра
//Тангенс угла наклона прямой
var k3:Number = (endBlur_3-begBlur_3)/(endTime_3-begTime_3);
//Свободный член (что это Вы уже знаете)
var b3:Number = begBlur_3-k3*begTime_3;
//Задаем начальные и конечные значения альфы
var begAlpha_3:Number = 100;
var endAlpha_3:Number = 0;
//Рассчитывем линейные коэффициенты уравнений изменения альфы
//Тангенс угла наклона прямой
var k4:Number = (endAlpha_3-begAlpha_3)/(endTime_3-begTime_3);
//Свободный член
var b4:Number = begAlpha_3-k4*begTime_3;
var filter:BlurFilter = new BlurFilter(begBlur_1, begBlur_1, quality);//Создаем Блюр фильтр. 1- качество
var filter_array:Array = [filter];
mc.filters = filter_array;
var newTime:Number = null;
this.onEnterFrame = function():Void
{
newTime = getTimer();
mc._x = k0*newTime+b0;
if ((newTime>=begTime_1)&&(newTime<endTime_1))
{
setBlurParams(mc,k1*newTime+b1);
mc._alpha = k2*newTime+b2;
}
if ((newTime>=begTime_3)&&(newTime<endTime_3))
{
setBlurParams(mc,k3*newTime+b3);
mc._alpha = k4*newTime+b4;
}
if (newTime>=endTime_3) {delete this.onEnterFrame;};
}
function setBlurParams(mc:MovieClip, blur:Number):Void
{
var filter_array = [];
filter_array = mc.filters;
filter_array[0].blurX = filter_array[0].blurY = blur;
mc.filters = filter_array;
delete filter_array;
}
Скорость движения, изменения блюра, альфы, все определяется блоком данных, с моими комментариями. Если что непонятно обращаейтесь. И еще я не стал делать переход на первый кадр (п.5 Вашего сценария). Я думаю Вы сможете сделать это и без моей помощи. Исходник прилагается. В исходнике код расположен на слое mc. Если Вам нужно разместить его на другом слое, например, actions, я думаю Вы это сделаете без труда. Всего доброго!
__________________
Случайность, господа, это знаете ли непознанная необходимость. |
|
|||||
|
Alex_beginner - Попробуйте свой код зациклить.
Я думал это будет не сложно, но как не прискорбно это звучит не смог этого сделать. Кто ни будь, может это сделать, хотелось бы посмотреть, где не хватило моей логики или знаний. Если бы, делал сам, делал по-другому и нашел бы решение данной задачи. Но хочется посмотреть на решения этой задачи. С уважением Vektor. P.S. Кстати я вспомнил, как работает getTimer(). Вопрос: можно ли не убирая getTimer(), решить эту проблему. Ответ: Мне кажется что нельзя. Последний раз редактировалось Vektor; 05.06.2008 в 08:13. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Непонятно нафиг вообще нужен таймер, если
Цитата:
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: May 2008
Сообщений: 476
|
Wolsh! Не пиксели, а время!!! В последнем сценарии Blacks'a это прописано. Мув должен переместиться в 200 пикселей с лево на право за 6 секунд. Если Вы будете делить фазы в соотвествии с пространственными измерениями, то нет гарантии, что Вы достигнете 200 пиксельной отметки именно за 6 секунд.
Vektor! На счет getTimer полностью с Вами согласен. Здесь как говориться пространственно-временной континиум 8-). На счет зацикливания, я невидел в последнем сценарии Black'a зацикливания. Там есть пункт 5 - стоп/переход на первй кадр и стоп. Вообще то мне это непонятно - два стопа, один переход )). С Уважением, Alex_beginner
__________________
Случайность, господа, это знаете ли непознанная необходимость. |
|
|||||
|
Нуб нубам
модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
|
Цитата:
И не надо цепляться к словам заказчика. Он может мерить проект хоть в попугаях. Но сказано точно : см. ТЗ пункт 1. Если Вы считаете, что заказчику нужно не это...
__________________
Reality.getBounds(this); |
|
|||||
|
Регистрация: May 2008
Сообщений: 476
|
Wolsh!
Цитата Black'а: Цитата:
__________________
Случайность, господа, это знаете ли непознанная необходимость. |
![]() |
![]() |
Часовой пояс GMT +4, время: 15:04. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|