【发布时间】:2011-10-28 20:43:44
【问题描述】:
我有一个刻度盘,我将它绕一圈拖动以显示 0 到 1 之间的读数。
类似这样的:
dx = mouseX-centerX;
dy = mouseY-centerY;
rad = Math.atan2(dy,dx);
rad += offset;
Tweener.addTween(knob,{y:centerY - Math.cos(rad)*radius, time:.1, transition:"easeOutSine"});
Tweener.addTween(knob,{x:centerX + Math.sin(rad)*radius, time:.1, transition:"easeOutSine"});
knob.rotation = rad * 180 / Math.PI;
这项工作很棒,除了当滑块从 359 度变为 1 度时,我在 0 和 1 之间的值返回为零。 (这是有道理的,因为该值是基于我的滑块的角度)
我正在尝试找到一种方法,让表盘基本上从 359 度移动到 361 度及以上。
在我的脑海中:我需要检查我的鼠标拖动的下一个值是否超过 360 度点并将 360 添加到总数中,以阻止它返回零并继续到 361 度。
我只是不知道如何将其放入代码中......
【问题讨论】:
标签: actionscript-3 animation trigonometry