- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我一直在为此自责,因为我认为这是一个简单的问题,但不知何故我就是找不到解决方案。
我正在根据触摸移动事件围绕其 anchor 旋转 CCSprite。这是我用来旋转 Sprite 的代码。
CGPoint previousLocation = [touch previousLocationInView:[touch view]];
CGPoint newLocation = [touch locationInView:[touch view]];
//preform all the same basic rig on both the current touch and previous touch
CGPoint previousGlLocation = [[CCDirector sharedDirector] convertToGL:previousLocation];
CGPoint newGlLocation = [[CCDirector sharedDirector] convertToGL:newLocation];
CCSprite *handle = (CCSprite*)[_spriteManager getChildByTag:HANDLE_TAG];
CGPoint previousVector = ccpSub(previousGlLocation, handle.position);
CGFloat firstRotateAngle = -ccpToAngle(previousVector);
CGFloat previousTouch = CC_RADIANS_TO_DEGREES(firstRotateAngle);
CGPoint currentVector = ccpSub(newGlLocation, handle.position);
CGFloat rotateAngle = -ccpToAngle(currentVector);
CGFloat currentTouch = CC_RADIANS_TO_DEGREES(rotateAngle);
float rotateAmount = (currentTouch - previousTouch);
handle.rotation += rotateAmount;
我需要以某种方式找到旋转方向,即顺时针或逆时针方向。我尝试通过在 rotateAmount 值上设置“if”条件来做到这一点。但这在特定情况下不起作用。
例如。如果用户沿顺时针方向旋转 Sprite ,在这种情况下,rotateAmount 值将为正值,范围为 0 - 359。当用户即将完成圆圈时,条件将不成立,方向将变为逆时针方向。
有没有更好的检测旋转方向的方法?
最佳答案
试试这个环绕式完整性检查:
float rotateAmount = (currentTouch - previousTouch);
if (rotateAmount > 180)
rotateAmount -= 360;
else if (rotateAmount < -180)
rotateAmount += 360;
handle.rotation += rotateAmount;
关于iphone - 找到 Sprite 的旋转方向,即顺时针或逆时针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15885441/
我已经很长时间没有使用数学了,这应该是一个简单的问题。 假设我有两个点 A:(1, 0) 和 B:(1, -1)。 我想使用一个程序(Python 或任何编程语言)来计算 A、原点 (0, 0) 和
我有一个用点表示的凸多边形。点由x 坐标数组 和y 坐标数组 表示。 例如: X = {6, 1, 5, 0, 3} Y = {4, 0, 0, 4, 6} 如何按顺时针排序这些点?点数并不总是相同,
我正在开发一个项目,使用这段代码将一个元素拖到另一个圆形元素周围:http://jsfiddle.net/sandeeprajoria/x5APH/11/ function rotateAnn
我有一个二维矩阵 M[N][N],我需要将其逆时针旋转 90 度。我已经看到很多顺时针旋转的答案,但我找不到逆时针旋转的答案。这两个操作有多相似? 最佳答案 如果您反转每一行的顺序,然后顺时针旋转以相
对于我不会涉及的上下文,我需要两个本质上互为倒数的函数。 angle_to() 应该返回钟针从 0° 到连接 p1 和 p2 的线所必须转动的度数>(即 p1 是旋转中心),其中 p1 和 p2 都是
我是一名优秀的程序员,十分优秀!