From 2439adafa8592995d9acead47ef2802d5d95c373 Mon Sep 17 00:00:00 2001 From: Kaalleen <36401965+kaalleen@users.noreply.github.com> Date: Fri, 29 Mar 2024 10:25:02 +0100 Subject: Add "the tartan universe" (#2782) --- lib/utils/clamp_path.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'lib/utils/clamp_path.py') diff --git a/lib/utils/clamp_path.py b/lib/utils/clamp_path.py index f6db66a8..0f58f83c 100644 --- a/lib/utils/clamp_path.py +++ b/lib/utils/clamp_path.py @@ -1,6 +1,9 @@ -from shapely.geometry import LineString, Point as ShapelyPoint, MultiPolygon +from shapely.geometry import LineString, MultiPolygon +from shapely.geometry import Point as ShapelyPoint from shapely.prepared import prep -from .geometry import Point, ensure_geometry_collection + +from .geometry import (Point, ensure_geometry_collection, + ensure_multi_line_string) def path_to_segments(path): @@ -122,7 +125,7 @@ def clamp_path_to_polygon(path, polygon): if not exit_point.intersects(entry_point): # Now break the border into pieces using those points. border = find_border(polygon, exit_point) - border_pieces = border.difference(MultiPolygon((entry_point, exit_point))).geoms + border_pieces = ensure_multi_line_string(border.difference(MultiPolygon((entry_point, exit_point)))).geoms border_pieces = fix_starting_point(border_pieces) # Pick the shortest way to get from the exiting to the -- cgit v1.2.3