7.3.7. pyafv.FiniteVoronoiSimulator._build_voronoi_with_extensions

FiniteVoronoiSimulator._build_voronoi_with_extensions(joggle=False)[source]

Build standard Voronoi structure for current points.

For N<=2, emulate regions. For N>=3, extend infinite ridges, add extension vertices, and update regions accordingly. Return the augmented structures.

Warning

This is an internal method. Use with caution.

Parameters:

joggle (bool) – Whether to joggle input points (N>=3) slightly to avoid precision issues (e.g., collinearities, co-circularities).

Returns:

A tuple containing:

  • vor: SciPy Voronoi object for current points with extensions.

  • vertices_all: (M,2) array of all Voronoi vertices including extensions.

  • ridge_vertices_all: (R,2) array of vertex indices for each ridge, including extensions.

  • num_vertices: Number of Voronoi vertices before adding extension.

  • vertexpair2ridge: dict mapping vertex index pairs to ridge index.

  • vertex_points: dict mapping vertex index to list of associated point indices.

Return type:

tuple[Voronoi, ndarray, ndarray, int, dict[tuple[int,int], int], dict[int, list[int]]]