Просмотр полной версии : Плавный поворот на определенный угол
Acrossfy
09.02.2009, 21:13
Пытался опять же найти пример подобного в сети, и очень удивился что не нашел.
Мне нужно сделать плавный поворот объекта на определенный угол. При "mc._rotation = 90;", клип само собой мгновенно оказывается повернут на 90 градусов.
Видел пример по плавному движению за мышью, либо "кручение" объекта постоянно. А вот как повернуть плавно на 90 градусов нигде не видел.
Заранее благодарен за любую помощь.
Psycho Tiger
09.02.2009, 21:27
Изменяйте угол, например, TweenLite`ом.
Или:
myMc.onEnterFrame=function():Void{
if (this._rotation<=90) this._rotation++;
}
Ха, а в условии _rotation не синенький =)
Во флеше весь код обрабатывается до прорисовки очередного кадра. Используйте onEnterFrame, как указал камрад Psycho Tiger. А для самообразования почитайте академическую литературу по Flash.
Acrossfy
09.02.2009, 23:44
Psycho Tiger, в этом коде мувик крутится не вокруг своей оси, а относительно непонятной оси куда выше него. Скорость нельзя изменить, поэтому мне не подойдет.
Решил узнать подробнее о TweenLite. Скачал, переместил папку gs в папку с проектом. Согласно мануалу написал наиболее просто:
import gs.TweenMax;
import gs.easing.*
TweenLite.to(mc, 1, {_x:1, _y:1, _xscale:1, _yscale:1, _rotation:90, _alpha:100, tint:0x000000, ease:Back.easeOut});
Ошибок при компиляции не было, но работать не хочет.
gloomyBrain
10.02.2009, 04:38
Ошибок при компиляции не было, но работать не хочет.
Может, лучше тогда ручками?
крутится не вокруг своей оси, а относительно непонятной оси
Мувик крутится вокруг своей оси. Ось расположена в точке с координатами (0;0) внутри мувика. То есть, если Вы хотите заставить мувик крутиться относительно своего центра, тогда необходимо зайти в библиотеку и передвинуть содержимое мувика так, чтобы центр этого содержимого совпал с точкой регистрации мувиклипа (там крестик такой в середине экрана)
Скорость нельзя изменить
А как Вы пробовали ее менять?
Acrossfy
10.02.2009, 10:03
Может, лучше тогда ручками?
Нет, нужно именно программно.
Насчет оси понял. Вечером так и сделаю.
Скорость нельзя изменить
Честно, как менять в данном случае, я не знаю.
С другой стороны хотелось бы подробно и про TweenLite узнать, ибо пригодится в других случаях и не раз. В чем может быть подвох, что у меня он не работает?
lexa2000lexa
10.02.2009, 11:16
скорость можно менять к примеру вот такmyMc.onEnterFrame=function():Void{
if (this._rotation<=90) this._rotation+=2;
}это будет увелечение ну и уменбщение следовательно такmyMc.onEnterFrame=function():Void{
if (this._rotation<=90) this._rotation+=0,5;
}
Flash_nooob
10.02.2009, 12:54
помоему он хотел затухание использовать, хотя могу и ошибаться, его можно реализовать как-то так:
var speed = 2;
myMc.onEnterFrame=function():Void{
if (this._rotation<=90)
{
this._rotation+=speed;
if (speed>0.1) speed -=0.1
}
}
Psycho Tiger
10.02.2009, 16:36
Psycho Tiger, в этом коде мувик крутится не вокруг своей оси, а относительно непонятной оси куда выше него. Скорость нельзя изменить, поэтому мне не подойдет.
Решил узнать подробнее о TweenLite. Скачал, переместил папку gs в папку с проектом. Согласно мануалу написал наиболее просто:
import gs.TweenMax;
import gs.easing.*
TweenLite.to(mc, 1, {_x:1, _y:1, _xscale:1, _yscale:1, _rotation:90, _alpha:100, tint:0x000000, ease:Back.easeOut});
Ошибок при компиляции не было, но работать не хочет.
Если надо только крутить, зачем менять координаты и размер?
У вас есть то папка gs с нужными файлами рядом с фла файлом?
UncleBoB
10.02.2009, 16:52
myMc.onEnterFrame=function():Void{
if (this._rotation<=90) this._rotation+=2;
}
Тогда объект просто повернется на 90 градусов. Глаз не сможет уловить движение
Acrossfy
10.02.2009, 17:01
Спасибо большое. За неимением времени воспользуюсь данными вариантами.
TweenLite меня сильно заинтересовал. Рад, что узнал об этом классе. Примеры движений, которые можно реализовать с его помощью очень понравились, хотя бы своей плавностью и легкостью настройки. Буду искать в чем у меня проблема с его подключением, но это тогда уже в отдельной ветке.
Еще раз спасибо.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.