Исходя из комментария, то, что вы хотите, все еще может рассматриваться как линейный градиент - то есть у вас есть линия от центра к внешней стороне круга, и у вас есть линейный градиент вдоль этой линии. Таким образом, расчет практически идентичен тому, что вы уже имели.
Редактировать: Хорошо, видимо, я неправильно понял, что вы хотите. Чтобы изобразить градиент, бегущий вокруг радиуса, вы все равно в основном его линеаризуете - вычислите окружность в этом радиусе (2 * Pi * R), а затем выполните линейную интерполяцию вдоль линии этой длины.