Thursday, April 21, 2005

Целые числа

Долго разбирался почему нельзя точно переместить мувик из одной координаты в другую..все расчеты, округления и манипуляции выдовали черте-че ( в качестве примера новые координаты получал кликая мышкой по главной сцене. Коордианы естественно округлял.. но результат движеня мувика меня поразил.) Еслиб не необходимая точность наверное все было бы нормально... но надо чтоб если кликнул в 200 то и "приехать" надо в 200 а не в 204 и не в 198.. погрешность +/- 4 пиксела это слишком.

Славо богу помогли хорошие люди, показали финт. И чего во флэше все так запутано...

dx=200;
this._x= Math.round(this._x);
var dxClip = (dx-this._x)/5;
var absDxClip = Math.abs(dxClip);
this._x = this._x+Math.ceil(absDxClip)*(absDxClip/dxClip);
trace(dx + " "+this._x);


dx эт и есть координата которую получаю при клике . И вот такими манипуляциями добиваемся идеально точного значения

0 Comments:

Post a Comment

<< Home