0
這是我的問題,每當我點擊任何按鈕它應該來中心,我使用CGAffineTransform和CABasicAnimation,但我無法得到我應該旋轉的角度,每個它們是一個按鈕在圓,任何幫助將理解尋找角度黑白兩點
旋轉
func rotateBarrel(with duration:CGFloat,angle:Double) {
let rotationAnimaton = CABasicAnimation(keyPath: "transform.rotation.z")
rotationAnimaton.toValue = angle
rotationAnimaton.duration = CFTimeInterval(duration)
barrelContainingView.layer.add(rotationAnimaton, forKey: "rotationAnimation")
barrelContainingView.transform = CGAffineTransform(rotationAngle: CGFloat(angle))
}
代碼角度計算
func angleToPoint(comparisonPoint: CGPoint) -> Double {
let originPoint = CGPoint(x:comparisonPoint.x-initialCenterPoint.x,y:comparisonPoint.y-initialCenterPoint.y)
return Double(atan2f(Float(originPoint.y), Float(originPoint.x)))
}
//初始碼l中心點是旋轉前的第3個按鈕的中心點