CAShapeLayer
指定形状路径
@property CGPathRef path; // 动画路径,默认为NULL
/**
* 不像大多数动画的性能,path(与所有CGPathRef动画属性)不支持隐动画。
* 路径对象可以使用任何的具体子类的动画CAPropertyAnimation
* 如果此属性的值是不为NULL,则path使用指定的路径,而不是创建该层的合成后的alpha通道。它使用的是非零缠绕规则和当前颜色,不透明度和模糊半径填充。
*/
访问形状样式属性
@property CGColorRef fillColor; // 填充颜色,默认是不透明的黑色,若值为nil,则没有填充效果
@property (copy) NSString *fillRule; // 填充规则,默认是kCAFillRuleNonZero
// kCAFillRuleNonZero: 指定非零缠绕规则。计算每个左到右的路径+1和-1为每个从右到左的道路。如果所有交叉的总和为0,则点是路径之外。如果该和为非零,该点是在路径内与包含它的区域被填充。
// kCAFillRuleEvenOdd: 指定奇偶缠绕规则。算路径交叉的总数。如果横跨的数目是偶数,该点的路径之外。如果横跨的数目是奇数,所述点是在路径内与包含它的区域应被填充。
@property (copy) NSString *lineCap; // 线端点样式,默认值是kCALineCapButt,还有kCALineCapRound, kCALineCapSquare
@property(copy) NSArray<NSNumber*> *lineDashPattern; // 一组NSNumber分别表示涂颜色的区段长度和未涂色的区段长度,默认值是nil
@property CGFloat lineDashPhase; // 冲刺阶段应用到的形状的路径,默认是0
@property (copy) NSString *lineJoin; // 拐角样式, 默认值是kCALineJoinMiter (尖角), kCALineJoinRound(圆角),kCALineJoinBevel(平角);
@property CGFloat lineWidth; // 线宽
@property CGFloat miterLimit; // 斜接样式,默认是10.0
@property CGColorRef strokeColor; // 画笔颜色
@property CGFloat strokeStart; // 和strokeEnd组合使用,默认值为1.0.取值范围为0.0到1.0;
@propertyCGFloat strokeEnd; // 和strokeStart组合使用,默认值为1.0.取值范围为0.0到1.0;