作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有这段代码:
let arcPath = UIBezierPath(ovalInRect: CGRectMake(0, 0, frame.width, frame.height))
circleLayer = CAShapeLayer()
circleLayer.path = arcPath.CGPath
circleLayer.fillColor = UIColor.clearColor().CGColor
circleLayer.strokeColor = UIColor.blueColor().CGColor
circleLayer.lineWidth = 5.0;
circleLayer.strokeStart = 0
circleLayer.strokeEnd = 0.7
结果是这样的:
如您所见,圆弧从圆的右侧开始。我想从顶部开始画弧。我该怎么做?我是否必须将整个物体旋转 -90 度才能完成我想要做的事情?
谢谢。
最佳答案
你可以这样创建路径
let bezierPath = UIBezierPath(arcCenter:CGPointMake(100,100), radius:40, startAngle: CGFloat(M_PI_2) * 3.0, endAngle:CGFloat(M_PI_2) * 3.0 + CGFloat(M_PI) * 2.0, clockwise: true)
截图
关于ios - CAShapeLayer strokeStart 和 strokeEnd 位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33431210/
我不是 100% 确定这是否适合 stackoverflow 作为一个编程问题,因为它主要是一个数学逻辑问题,我很难解决,所以如果不是我的问题。 我正在用下面的一些代码制作一个圆圈: // Set t
我有这段代码: let arcPath = UIBezierPath(ovalInRect: CGRectMake(0, 0, frame.width, frame.height))
我是一名优秀的程序员,十分优秀!