don't crash
This commit is contained in:
parent
aab85fe32e
commit
d6d20ccd37
13 changed files with 2630 additions and 3924 deletions
|
|
@ -5,9 +5,10 @@ from pathlib import Path
|
|||
import polars as pl
|
||||
from shapely import wkb
|
||||
from shapely.geometry import MultiPolygon, Polygon
|
||||
from shapely.ops import unary_union
|
||||
from shapely.strtree import STRtree
|
||||
|
||||
from .geometry import safe_difference, safe_union
|
||||
|
||||
|
||||
def load_greenspace(path: Path) -> tuple[STRtree, list]:
|
||||
"""Load greenspace parquet and build an STRtree spatial index.
|
||||
|
|
@ -51,8 +52,8 @@ def subtract_greenspace(
|
|||
if not intersecting:
|
||||
return postcode_geom
|
||||
|
||||
green_union = unary_union(intersecting)
|
||||
result = postcode_geom.difference(green_union)
|
||||
green_union = safe_union(intersecting)
|
||||
result = safe_difference(postcode_geom, green_union)
|
||||
|
||||
if result.is_empty:
|
||||
return postcode_geom
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue