¿Cuántos vértices puede tener la intersección de dos polígonos convexos?

Dados dos polígonos convexos pag 0 y pag 1 con norte 0 y norte 1 vértices (asumir norte 0 >= norte 1 sin pérdida de generalidad) en un plano bidimensional, ¿cuál es el número máximo de vértices norte 2 , metro a X del polígono de intersección pag 2 ¿Cuál contiene el área que comparten ambos polígonos? Aquí están mis pensamientos:

  • Si los polígonos son disjuntos, la intersección está vacía. norte 2 , metro i norte = 0 .
  • Si un polígono está dentro de otro, el polígono interior coincide con la intersección. norte 2 , metro a X >= norte 0 .
  • el polígono pag 0 con más vértices puede cruzar polígono pag 1 a lo sumo 2 norte 1 veces (cada borde dos veces). Cada punto de cruce es un vértice de la intersección. Si los puntos restantes de pag 0 están dentro, el número máximo de vértices es norte 2 , metro a X = 2 norte 1 + ( norte 0 norte 1 ) = norte 0 + norte 1 .

¿Me estoy perdiendo de algo? ¿Hay una situación con más de norte 0 + norte 1 vértices de la intersección?

Como fondo: tengo un algoritmo para calcular la intersección de dos polígonos, pero necesito asignar suficiente memoria para la intersección antes de calcularla. Mi valor inicial fue 2 ( norte 0 + norte 1 ) pero eso parece ser más que requerido si lo anterior es correcto.

La respuesta se puede inducir desde math.stackexchange.com/questions/3479538

Respuestas (1)

Los bordes de los nuevos polígonos son partes de los bordes de los polígonos antiguos. Si bien cada borde del polígono 0 puede dividirse en hasta tres segmentos de línea por el polígono 1, como máximo uno de estos segmentos de línea puede convertirse en un borde del nuevo polígono. Lo mismo vale para los bordes del polígono 1. Por lo tanto, el polígono 2 no puede tener más de

norte 0 + norte 1
bordes