我画一些简单的贝塞尔路径,但是我发现它不可能消除所创建的尖峰时线段之间的角度是小的:
(注:圈子是由一个独立的绘图操作,但我想,以确保该行不秒杀过去的圈子......)。
我已经试过各种lineCapStyle和lineJoinStyle的变化,但似乎没有任何工作。 除了什么如下所示我一直在使用尖角与“setMiterLimit”加入尝试。
这里是我的画线剪断的代码:
CAShapeLayer *myShapeLayer=[CAShapeLayer layer];
UIBezierPath *myPath=[UIBezierPath bezierPath];
[myPath moveToPoint:tmpPoint];
[myPath addLineToPoint:tmpPoint];
[myPath setLineCapStyle:kCGLineCapRound];
[myPath setLineJoinStyle:kCGLineJoinRound];
myShapeLayer.path=[myPath CGPath];
myShapeLayer.strokeColor = [[UIColor yellowColor] CGColor];
myShapeLayer.fillColor = [[UIColor clearColor] CGColor];
myShapeLayer.lineWidth = 3.0;
以防万一 - 这里是我用过的米特代码,改变价值ROM 0.0至100.0 - 所有没有影响:
[myPath setLineCapStyle:kCGLineCapRound];
[myPath setLineJoinStyle:kCGLineJoinMiter];
[myPath setMiterLimit:1.0];