我正在使用
float theAngle = atan2( location.y-self.center.y, location.x-self.center.x );
以一定角度旋转滚轮。
和
self.transform = CGAffineTransformMakeRotation(angleRadians);
进行转型。
但是每当用户压下滚轮转动它时,它就会回到原来的位置并从那里开始。我怎么能阻止这种情况发生呢?
谢谢!
答案 0 :(得分:1)
我会猜测原因是你根据车轮的原始位置而不是车轮的先前位置进行计算。
即。假设self.center表示首先显示的轮子的原始位置,location表示用户期望的新旋转并在维基百科上查找atan2(trig不是我的强点:-)我猜你需要self.location来更新每次到达位置,以便下一次旋转从最后一次旋转开始。
只是猜测: - )
答案 1 :(得分:1)
您可以设置滚轮的旋转角度值,而不是将值添加到当前角度。