• android path get points

    @GoLdoF
    Можно извлечь список точек через класс 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
    }