2012-06-14 77 views
0

我正試圖計算點擊的角度,我在關係到屏幕中間。但也許我很困惑如何atanf suppsoed工作。找出角度與直角三角形在objective-c

CGPoint pt = [self convertTouchToNodeSpace:[touches anyObject]]; 
    float adj = pt.x - 512; 
    float opposite = pt.y - 384; 
    float combined = opposite/adj; 
    float tan = atanf(combined); 

但是當我嘗試NSLog的譚,我只是得到了一些巨大的數字,如0.1253649

想法?

+1

數字「1」是什麼「巨人」? [文檔說](http://developer.apple.com/library/mac/#documentation/darwin/reference/manpages/man3/atanf.3.html#//apple_ref/doc/man/3/atanf)返回的值在'[-pi/2,+ pi/2]'範圍內。 –

+2

您知道trig函數全部使用弧度,而不是度數? – jrturton

回答

2

矢量轉換成角度正確的方法是通過atan2功能:

float angle = atan2f (pt.y - 384, pt.x - 512) * 180/PI; 

PS:您使用的cocos2d引擎?它有ccpToAngle(...)的功能。