Я хочу создать идеальный полукруг в нижней части моего представления, и теперь я получаю только дугу в верхней части прямоугольника (см. Прилагаемое изображение). Это код, я использую следующую команду, где circularRect происхождения = (х = 128, у = 514), размер = (ширина = 64, высота = 54)Создайте полукруг с графикой ядра
CGFloat arcHeight = 60.0;
CGRect arcRect = CGRectMake(circularRect.origin.x, circularRect.origin.y + circularRect.size.height - arcHeight, circularRect.size.width, arcHeight);
CGFloat arcRadius = 60;
CGPoint arcCenter = CGPointMake(arcRect.origin.x + arcRect.size.width/2, arcRect.origin.y + arcRadius);
CGFloat angle = acos(arcRect.size.width/(2*arcRadius));
CGFloat startAngle = 270 * M_PI/180 + angle;
CGFloat endAngle = 90 * M_PI/180 - angle;
CGContextAddArc(context, arcCenter.x, arcCenter.y, arcHeight, startAngle, endAngle, 1);
CGContextClip(context);
CGContextClearRect(context, arcRect);
CGContextSetFillColorWithColor(context, [UIColor greenColor].CGColor);
CGContextFillRect(context, arcRect);
Что Я поступаю неправильно? Благодаря!