Можно извлечь список точек через класс PathMeasure
val p : Path = createPathSomehow()
val pathMeasure = PathMeasure(p, false)
// координаты и dx/dy для касательной в заданной точки Path будут в этих массивах
val outputPoints = FloatArray(2) { _ -> 0f }
val outputTangents = FloatArray(2) { _ -> 0f }
val pathStep = 1.0f
var pathX = 0f
while (pathX <= pathMeasure.length) {
pathMeasure.getPosTan(pathX, outputPoints, outputTangents)
bezierPoints.add(PointF(outputPoints[0], outputPoints[1]))
val dx = outputTangents[0]
val dy = outputTangents[1]
val isTopToBottom = dy < 0
var rotation = Math.toDegrees(atan(dx / dy.toDouble())).toFloat()
bezierTangents.add(rotation)
pathX += pathStep
}
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.