APIs de geometría

Las APIs de Geometry te permiten crear herramientas interactivas, como mecanismos de selección y borradores.

En esta sección, se muestra cómo usar las APIs de Geometry para implementar un borrador.

private fun eraseIntersectingStrokes(
  currentX: Float,
  currentY: Float,
  currentStrokes: MutableList<Stroke>,
  ): Unit {
    val prev = previousPoint
    previousPoint = MutableVec(currentX, currentY)
    if (prev == null) return

    val segment = MutableSegment(prev, MutableVec(currentX, currentY))
    val parallelogram = MutableParallelogram().populateFromSegmentAndPadding(
      segment,
      eraserPadding
    )
    currentStrokes.removeAll {
        it.shape.intersects(parallelogram, AffineTransform.IDENTITY)
    }
}