clipping ein Voronoi-Diagramm Python

Ich berechne ein Voronoi-Diagramm aus einer Reihe von Punkten wie folgt:

from scipy.spatial import Voronoi
import numpy as np


np.random.seed(0)
points = np.random.uniform(-0.5, 0.5, (100, 2))
// Compute Voronoi
v = Voronoi(points)
voronoi_plot_2d(v)
plt.show()

Dies erzeugt ein Bild wie folgt:

Wie man sehen kann, werden dadurch Scheitelpunkte erzeugt, die ins Unendliche gehen (gestrichelte Linien) und auch jenseits des ursprünglichen Begrenzungsrahmens für die Punkte:

 bbox = np.array([[-0.5, -0.5], [0.5, -0.5], [0.5, 0.5], [-0.5, 0.5]])

Was ich tun möchte, ist das Voronoi-Diagramm an diesem Begrenzungsrahmen zu befestigen, d. H. Die außerhalb der Grenzen liegenden und unendlichen Scheitelpunkte auf die entsprechenden Stellen auf diesem Begrenzungsrahmen zu projizieren. Die Scheitelpunkte müssten also neu angeordnet und zu den richtigen Schnittpunkten aus dem Unendlichen oder den endlichen Scheitelpunkten projiziert werden, die sich jedoch außerhalb der Grenzen meines Beschneidungsbereichs befinden.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage