Просмотр полной версии : Крутить круг с инерцией
Привет!)
Задача сделать некий круг который будет крутиться с инерцией по движению мыши при отпускании кнопки. То есть схватили - провернули по оси - отпустили - круг крутится и постепенно останавливается. Чем сильнее прокрутили — тем быстрее крутится. Вроде на айфоне такое было где-то.
Может кто-то знает где исходники или ссылки с этой темой буду оч признателен.
Вот попробовал сделать. Наверно возможно и проще. Кажется косяков нет, хотя..
код был такой:
oldSpeed = 0;
nowSpeed = 0;
circle.onPress = function() {
offset = this._rotation - (Math.atan2(_ymouse - this._y, _xmouse - this._x) / Math.PI * 180);
this.onEnterFrame = function() {
oldSpeed = this._rotation;
this._rotation = (Math.atan2(_ymouse - this._y, _xmouse - this._x) / Math.PI * 180) + offset;
nowSpeed = oldSpeed - this._rotation;
trace(nowSpeed);
};
};
circle.onRelease = circle.onReleaseOutside = function () {
delete this.onEnterFrame;
this.onEnterFrame = function() {
this._rotation -= nowSpeed;
nowSpeed *= 0.98;
if (nowSpeed > -0.5 && nowSpeed < 0.5) {
delete this.onEnterFrame;
}
};
};
хотя бывает что-то не так..
Universe
26.02.2010, 16:14
Прикольненько!:)
Вау! Замечательно! То что нужно спасибо. Косяков в примере найти не удалось;)
Косяки всё же есть, и вы наткнётесь на них. Я уже понял как их исправить, и я это сделаю, но позже, сейчас нет времени.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.