Возможно, вы сможете использовать CAShapeLayer в качестве маски для CAGradientLayer, установив для него свойство mask
CAGradientLayer.Это может дать вам градиент вдоль искомой линии.
В противном случае, следуйте примеру кода из этого ответа , чтобы нарисовать путь с использованием Core Graphics, закрепить его с помощью CGContextClip()
а затем нарисуйте градиент, который будет появляться только внутри нарисованного пути.