梯度沿着CGPath

我正在绘制一个几乎完整的圆弧:

CGContextSetFillColorWithColor(context, [UIColor whiteColor].CGColor); CGMutablePathRef path = CGPathCreateMutable(); CGPathMoveToPoint(path, NULL, centerPoint.x, centerPoint.y); CGPathAddArc(path, NULL, centerPoint.x, centerPoint.y, radius, (float)(3.0f * M_PI_2), radians, !clockwise); CGPathCloseSubpath(path); CGContextAddPath(context, path); CGContextFillPath(context); CGPathRelease(path); 

我有一条弧形路径,几乎是一个完整的圆圈。 在这段代码中,它只是一种颜色,但是,我希望一端是纯白色而另一端是[UIColor clearColor]以便它平滑地淡出

我发现的每个代码示例都使用线性渐变。 这不行。 我不想要线性渐变,而是沿着路径行进的渐变,使得一端是colorA而另一端是colorB。

看来这应该是可能的。 CoreGraphics可以吗? 或者如果没有,另一种方法?