UFO ET IT

UIView에 대한 현재 각도 / 회전 / 라디안을 얻습니까?

ufoet 2021. 1. 17. 11:36
반응형

UIView에 대한 현재 각도 / 회전 / 라디안을 얻습니까?


UIView의 현재 각도 / 회전 / 라디안을 어떻게 얻습니까?


이런 식으로 할 수 있습니다 ...

CGFloat radians = atan2f(yourView.transform.b, yourView.transform.a); 
CGFloat degrees = radians * (180 / M_PI);

빠른:

// Note the type reference as Swift is now string Strict

let radians:Double = atan2( Double(yourView.transform.b), Double(yourView.transform.a))
let degrees:CGFloat = radians * (CGFloat(180) / CGFloat(M_PI) )

Swift 3의 경우 다음 코드를 사용할 수 있습니다.

let radians:Float = atan2f(Float(view.transform.b), Float(view.transform.a))
let degrees:Float = radians * Float(180 / M_PI)

다른 많은 답변 참조 atan2f이지만 CGFloats에서 작업 atan2하고 있으므로 불필요한 중간 캐스트를 사용 하고 건너 뛸 수 있습니다 .

스위프트 4 :

let radians = atan2(yourView.transform.b, yourView.transform.a)
let degrees = radians * 180 / .pi

// Swift 3 : M_PI는 이제 감가 상각됩니다. Use Double.pi

let radians = atan2f(Float(yourView.transform.b), Float(yourView.transform.a));
let degrees = radians * Float(180 / Double.pi)

// Swift 4 :

let radians = atan2(yourView.transform.b, yourView.transform.a)
let degrees = radians * 180 / .pi

신속한 2 및 Xcode 7에서 :

let RdnVal = CGFloat(atan2f(Float(NamVyu.transform.b), Float(NamVyu.transform.a)))
let DgrVal = RdnVal * CGFloat(180 / M_PI)

참조 URL : https://stackoverflow.com/questions/5754877/get-the-current-angle-rotation-radian-for-a-uiview

반응형