         switch touchPointPosition {
         case .topLeft:
             fromPointOffsetXSign = touchPointInset.top >= arcRadius ? -1 : 1
-            fromPointOffsetYSign = marginY + buttonRadius >= touchPointInset.top ? 1 : -1
-            toPointOffsetXSign = marginX + buttonRadius >= touchPointInset.left ? 1 : -1
+            fromPointOffsetYSign = marginY + buttonRadius >= touchPointInset.top ? -1 : 1
+            toPointOffsetXSign = 1
             toPointOffsetYSign = 1
             
         case .topRight:
-            fromPointOffsetXSign = touchPointInset.top >= arcRadius ? -1 : 1
-            fromPointOffsetYSign = marginY + buttonRadius >= touchPointInset.top  ? 1 : -1
-            toPointOffsetXSign = marginX + buttonRadius >= touchPointInset.right ? -1 : 1
+            fromPointOffsetXSign = touchPointInset.top >= arcRadius ? 1 : -1
+            fromPointOffsetYSign = marginY + buttonRadius >= touchPointInset.top  ? -1 : 1
+            toPointOffsetXSign = -1
             toPointOffsetYSign = 1
             
         case .bottomLeft:
             fromPointOffsetXSign = touchPointInset.bottom >= arcRadius ? -1 : 1
             fromPointOffsetYSign = marginY + buttonRadius >= touchPointInset.bottom ? -1 : 1
-            toPointOffsetXSign = marginX + buttonRadius >= touchPointInset.left ? 1 : -1
+            toPointOffsetXSign = 1
             toPointOffsetYSign = -1
             
         case .bottomRight:
-            fromPointOffsetXSign = touchPointInset.bottom >= arcRadius ? -1 : 1
+            fromPointOffsetXSign = touchPointInset.bottom >= arcRadius ? 1 : -1
             fromPointOffsetYSign = marginY + buttonRadius >= touchPointInset.bottom ? -1 : 1
-            toPointOffsetXSign = marginX + buttonRadius >= touchPointInset.right ? -1 : 1
+            toPointOffsetXSign = -1
             toPointOffsetYSign = -1
             
         default:

    }
    
    func positionsOfItemsInView(with size: CGSize, at touchPoint: CGPoint) -> [CGPoint] {
        // Get sin of angle (which is half of button angle
        var points = [CGPoint]()
        
        let fromAndToAngles = self.fromAngleAndToAngleInView(withSize: size, atPoint: touchPoint)
        let fromAngle = fromAndToAngles[0];
        let toAngle = fromAndToAngles[1];
        let maximumArcAngle = toAngle - fromAngle
        var startingAngle = 0.0
        
        if maximumArcAngle > buttonsArc {
            startingAngle = (maximumArcAngle - buttonsArc) / 2
        }
        
        let step = (toAngle - fromAngle) / Double(numberOfItems - 1)
        
        
        for i in 0 ..< numberOfItems {
            let angle = step * Double(i) + fromAngle
            let x = touchPoint.x + (distance + buttonRadius) * CGFloat(cos(angle))
            let y = touchPoint.y + (distance + buttonRadius) * CGFloat(sin(angle))
            let point = CGPoint(x: x, y: y)

        let verticalLength = fabs(centerPoint.y - anotherPoint.y)
        var angle = atan(verticalLength/horizontalLength)
        
        if isObstubeAngle {
            angle = ((CGFloat)(Double.pi) - angle) * sign
        } else {
            angle = angle * sign
        }
        
