Diagrama de Voronoi

Partición del espacio por proximidad

Un diagrama de Voronoi divide el plano en regiones donde cada punto pertenece al sitio generador más cercano. Esta partición aparece naturalmente en territorios animales, estructuras celulares, cristales y redes de telecomunicaciones. Es una de las estructuras geométricas más ubicuas en la naturaleza.

Lo que observarás en esta simulación

Conceptos Fundamentales

Celda de Voronoi

V(p) = {x : d(x,p) ≤ d(x,q) para todo q}. La región de puntos más cercanos al sitio p que a cualquier otro sitio.

Mediatriz

Cada borde de Voronoi yace sobre la mediatriz de dos sitios vecinos: la línea donde ambas distancias son iguales.

Triangulación de Delaunay

El grafo dual: conecta sitios cuyas celdas comparten borde. Maximiza el ángulo mínimo de todos los triángulos.

Circuncírculo Vacío

Propiedad clave de Delaunay: ningún otro sitio cae dentro del circuncírculo de cualquier triángulo.

La Dualidad

Voronoi

Vértices ↔ Triángulos

Aristas ↔ Aristas

Celdas ↔ Vértices

Delaunay

Triángulos ↔ Vértices

Aristas ↔ Aristas

Vértices ↔ Celdas

Los vértices de Voronoi son exactamente los circuncentros de los triángulos de Delaunay. Esta dualidad permite calcular uno a partir del otro eficientemente.

Definición Matemática

V(pᵢ) = { x ∈ ℝ² : ||x - pᵢ|| ≤ ||x - pⱼ|| ∀j ≠ i }
Celda de Voronoi del sitio pᵢ usando distancia euclidiana

La simulación usa el algoritmo de Bowyer-Watson para construir la triangulación de Delaunay incrementalmente, y luego deriva el diagrama de Voronoi conectando los circuncentros.

Circuncentro: (ux, uy)
ux = [(a²)(by-cy) + (b²)(cy-ay) + (c²)(ay-by)] / D
donde D = 2[ax(by-cy) + bx(cy-ay) + cx(ay-by)]

Experimento 1: Construcción Interactiva

Objetivo: Entender cómo se forman las celdas

  1. Haz clic en "Limpiar Todo" para empezar con un canvas vacío.
  2. Añade un solo punto. No hay diagrama con un solo sitio (toda el área le pertenece).
  3. Añade un segundo punto. Aparece una línea recta: la mediatriz entre ambos sitios.
  4. Añade un tercer punto. Ahora hay un vértice de Voronoi donde convergen tres mediatrices.
  5. Continúa añadiendo puntos y observa cómo cada celda es un polígono convexo.
  6. Arrastra un punto existente y observa cómo se recalcula todo el diagrama en tiempo real.

Conclusión: Las celdas de Voronoi son siempre polígonos convexos. Las celdas del borde son infinitas (se extienden hasta el límite del canvas).

Experimento 2: La Dualidad Voronoi-Delaunay

Objetivo: Visualizar la relación dual

  1. Carga el preset "10 Aleatorios" para tener suficientes puntos.
  2. Activa "Mostrar triangulación Delaunay" (aparece en azul cyan).
  3. Observa que cada triángulo de Delaunay tiene exactamente un vértice de Voronoi en su centro.
  4. Activa "Mostrar circuncentros" para ver estos puntos en morado.
  5. Cada arista de Delaunay (conectando dos sitios) es perpendicular a la arista de Voronoi correspondiente.
  6. Mueve un punto y observa cómo ambas estructuras se actualizan manteniendo la dualidad.

Conclusión: Voronoi y Delaunay son dos caras de la misma moneda. Calcular uno te da el otro.

Experimento 3: Configuraciones Especiales

Objetivo: Explorar patrones de simetría

  1. Carga el preset "Grilla". Observa que las celdas son cuadrados perfectos debido a la simetría.
  2. Carga "Círculo". Los 12 puntos en círculo crean celdas triangulares/trapezoidales, con el punto central teniendo una celda dodecagonal.
  3. Carga "Espiral". Las celdas se alargan siguiendo la curva, más estrechas hacia el centro.
  4. Carga "Clusters". Los grupos de puntos compiten por espacio, creando fronteras complejas entre clusters.
  5. En cada configuración, activa la triangulación de Delaunay para ver cómo conecta los puntos.

Conclusión: La distribución de los sitios determina completamente la estructura del diagrama. Patrones regulares producen celdas regulares.

Experimento 4: Animación y Dinámicas

Objetivo: Ver cómo evoluciona el diagrama

  1. Carga "50 Aleatorios" para tener un diagrama complejo.
  2. Activa "Animar puntos" y ajusta la velocidad a 1.0x.
  3. Observa cómo las celdas cambian de forma continuamente a medida que los puntos se mueven.
  4. Los puntos rebotan en los bordes. Nota cómo los vecinos topológicos pueden cambiar.
  5. Desactiva "Mostrar celdas coloreadas" y activa solo los bordes para ver mejor la estructura.
  6. Pausa la animación cuando veas una configuración interesante.

Conclusión: El diagrama de Voronoi cambia continuamente, pero la topología (qué celdas son vecinas) solo cambia cuando tres circuncentros se alinean.

Aplicaciones

📱
Redes Celulares
Cobertura de antenas
🔬
Biología
Territorios celulares
💎
Cristalografía
Dominios de Wigner-Seitz
🌦️
Meteorología
Interpolación espacial
🎮
Videojuegos
Generación procedural
🗺️
SIG
Análisis de proximidad

Contexto Histórico

René Descartes usó diagramas similares en 1644 para describir la estructura del sistema solar en su teoría de vórtices. Pero fue Georgy Voronoi quien formalizó el concepto matemáticamente a principios del siglo XX, estudiándolo en dimensiones arbitrarias.

1644

Descartes: Usa particiones similares en "Principia Philosophiae" para modelar vórtices cósmicos.

1850

Dirichlet: Estudia dominios de puntos más cercanos en el contexto de formas cuadráticas.

1908

Voronoi: Generaliza a n dimensiones en su trabajo sobre formas cuadráticas positivas.

1934

Delaunay: Introduce la triangulación dual que maximiza ángulos mínimos.

1981

Bowyer y Watson: Publican independientemente el algoritmo incremental que usa esta simulación.

Conexiones Interdisciplinarias

Biología
Células epiteliales
Física
Celdas de Wigner-Seitz
Geografía
Polígonos de Thiessen
Robótica
Planificación de rutas
Arte
Mosaicos generativos
Ecología
Territorios animales

Para Explorar Más