我从以下链接中参考到一些内容:
我已经了解了“HSV色彩空间”的概念。但我想用RGB和
下面是使用简单的RGB颜色数组和
CAGradientLayer
来画一个颜色环。下面是使用简单的RGB颜色数组和
UIBezierPath
制作颜色环的代码片段:func drawColorWheel()
{
context?.saveGState()
range = CGFloat(100.00 / CGFloat(colorArray.count))
for k in 0 ..< colorArray.count
{
drawSlice(startPercent: CGFloat(k) * range, endPercent: CGFloat(CGFloat(k + 1) * range), color: colorArray.object(at: k) as! UIColor)
}
context?.restoreGState()
}
func drawSlice(startPercent: CGFloat, endPercent: CGFloat, color: UIColor)
{
let startAngle = getAngleAt(percentage: startPercent)
let endAngle = getAngleAt(percentage: endPercent)
let path = getArcPath(startAngle: startAngle, endAngle: endAngle)
color.setFill()
path.fill()
}
getAngleAt()
和getArcPath()
是绘制带有角度路径的私有函数。
现在,我的问题是如何给这些颜色添加渐变效果,使每种颜色与渐变颜色层混合?