1. 程式人生 > >iOS 獲取沿圓形軌跡移動控制元件center座標的一種思路

iOS 獲取沿圓形軌跡移動控制元件center座標的一種思路

+ (CGPoint)calToAcquireTheCenterWithCircleRadius:(CGFloat)circleRadius moveAngle:(CGFloat)moveAngle
{
    CGPoint center = CGPointZero;
    // 設圓心角A的對邊為a 鄰邊為b 斜邊為c
    CGFloat x = sin(kXXAngleToRadian(moveAngle)) * circleRadius;
    CGFloat y = cos(kXXAngleToRadian(moveAngle)) * circleRadius;
    center.x
= radius + x; center.y = radius - y; return center; } // #define kXXAngleToRadian(angle) (M_PI / 180.0 * (angle))

假設一個紅色圓圈控制元件可能出現在圓形軌跡任意位置,通過以上方法獲取到的就是在最外層正方形檢視中(作為superview),某一角度時該控制元件的center座標。
center計算示意圖