Я кодировал, как показано ниже, для полукруга в iOS, используя UIBezierPath и CAShapeLayer.начальный и конечный угол UIBezierPath?
clockWiseLayer = [[CAShapeLayer alloc] init];
CGFloat startAngle = -M_PI_2;
CGFloat endAngle = M_PI + M_PI_2;
CGFloat width = CGRectGetWidth(imageView.frame)/2.0f + 30;
CGFloat height = CGRectGetHeight(imageView.frame)/2.0f +50;
CGPoint centerPoint = CGPointMake(width, height);
float radius = CGRectGetWidth(imageView.frame)/2+10;
clockWiseLayer.path = [UIBezierPath bezierPathWithArcCenter:centerPoint
radius:radius
startAngle:startAngle
endAngle:endAngle
clockwise:YES].CGPath;
clockWiseLayer.fillColor = [UIColor clearColor].CGColor;
clockWiseLayer.strokeColor = [UIColor blueColor].CGColor;
clockWiseLayer.borderColor = [UIColor greenColor].CGColor;
clockWiseLayer.backgroundColor = [UIColor redColor].CGColor;
clockWiseLayer.strokeStart = 0.0f;
clockWiseLayer.strokeEnd = 0.5f;
clockWiseLayer.lineWidth = 2.0f;
clockWiseLayer.borderWidth = 5.0f;
clockWiseLayer.shouldRasterize = NO;
[self.layer addSublayer:clockWiseLayer];
Результаты приведены ниже.
Я хочу, чтобы этот синий полукруг на противоположной стороне земного шара земного шара.
Это половина круга, но я хочу это на другой стороне, также CounterClockWise.
Я не могу установить начальный и конечный угол для этого, тогда как по часовой стрелке: NO.
Спасибо.
Вы пытались только начать с M_PI_2 и кончить M_PI_2 + M_PI? –
Да, я сделал, бесполезно. его приближение не совсем противоположно. –
Что вы подразумеваете под «Я ** ** не могу ** установить угол начала и конца для этого, а по часовой стрелке: НЕТ« Не нарисовать половину круга? Он падает? что-то другое? – Avt