四捨五入するグラフィックス状態パラメータCGContextSetLineJoinを設定してください:CGContextSetLineCap(ctx, kCGLineCapRound);
ここであなたの質問に基づいて、私の研究です。このメソッドは、drawRect:メソッドにあり、メソッドに対して、startAngle、endAngle、およびradiusパラメータのみを与えるために、抽象メソッドを作成しました。もちろん洗練されています。
このメソッドの出力から画像を提供しました。
- (void)drawRect:(CGRect)rect {
float startAngle = 0;
float endAngle = 60;
float radius = 50.0;
CGContextRef ctx = [self drawRoundedArcWithStartAngle:startAngle endAngle:endAngle radius:radius];
CGContextStrokePath(ctx);
}
- (CGContextRef)drawRoundedArcWithStartAngle:(float)startAngle endAngle:(float)endAngle radius:(float)radius {
CGContextRef ctx = UIGraphicsGetCurrentContext();
// [CGContextAddArc(ctx, self.frame.size.width/2 , self.frame.size.height/2, radius, 2*M_PI, 3*M_PI/2-(angle * M_PI/180), 0)];
CGContextAddArc(ctx, self.frame.size.width/ 2, self.frame.size.height/2, radius, (startAngle * M_PI/180), (endAngle * M_PI/180), 0);
CGContextSetRGBStrokeColor(ctx, 0.0, 0.0, 0.0, 1.0);
CGContextSetLineWidth(ctx, 20.0f);
CGContextSetLineCap(ctx, kCGLineCapRound);
return ctx;
}
希望します。
あなたのグラフィックライブラリは、ペンの特性を設定する提供してい
のObjective-Cで簡単に設定することができますか? Windows GDIのPS_ENDCAP_ROUNDに似ています。 – MBo