Математика для колебательных движений:
ВАРИАНТ 1 (последовательность типа 0,1,2,3,4,5,4,3,2,1,0,1,2,3,4,5,4,3...)
например когда нужно получить готовые координаты.
counter++;
...
var speed:Number = 1;
var range:Number = 100;
var result:Number = Math.abs((counter%(range/speed))-(range/speed)/2)*speed;пример:
var counter:Number = 0 // счётчик (чтоб result начинался с 0: counter = range)
var range:Number = 50; //диапазон(выдаст result в пределах -50...50)
var speed:Number = 1; //скорость*
var result:Number; //результат
protected function thisEnterFrameHandler(event:Event):void{
counter++
result = Math.abs((counter%(range/speed))-(range/speed)/2)*speed;
//[Фигня которую нужно пошевелить].rotationX = result;
//или [...].y= 100 + result;
}
ВАРИАНТ 2 (последовательность типа -1,-1,-1,-1,-1,1,1,1,1,1,-1,-1,-1,-1,-1,...)
например когда нужно получить приращение координат.
counter++;
...
var range:Number = 5;
var speed:Number = 1;
var result:Number = frameCounter%(range*2)-range>=0?1*speed:-1*speed;пример:
...
result = (frameCounter%(range*2)-range>=0?1:-1)*speed;
this.rotationX += result;
...
Комментариев нет:
Отправить комментарий