1
我有一個應用程序,只要用戶在屏幕上按下,就可以在儀表上激活針。當手指擡起時,我需要知道針的旋轉角度。手指擡起後,我立即移除所有動畫,但我無法計算如何獲取針的當前旋轉角度。iOS Swift Detecting Image Rotation
我有一個應用程序,只要用戶在屏幕上按下,就可以在儀表上激活針。當手指擡起時,我需要知道針的旋轉角度。手指擡起後,我立即移除所有動畫,但我無法計算如何獲取針的當前旋轉角度。iOS Swift Detecting Image Rotation
這是很簡單的,這是完整的解決方案:
樣本設置:
imageView.transform = CGAffineTransform(rotationAngle: CGFloat.pi/6) // just to test (it is 30 in degrees and 0.523598775598299 in radians)
代碼:
let rad: Double = atan2(Double(imageView.transform.b), Double(imageView.transform.a))
let deg: CGFloat = CGFloat(rad) * (CGFloat(180)/CGFloat.pi)
print(deg) // works, printing 30
其中deg = degrees
和rad = radians
說明: 第一行是獲得弧度,第二行將弧度乘以相當於弧度的度數,以獲得度數。
NOTES:
在CGAffineTransform(rotationAngle: someValue)
,someValue
,實際上,該角度的弧度,它不是以度爲單位。更多相關信息:
弧度CGFloat.pi
的度數值爲180,因此您可以根據它測試任意角度。
讓我知道,如果這有助於!
太完美了!我確實需要對高級數學進行一些研究。 –
不客氣!歡迎任何進一步的問題 –