From 548b5c2e28468ad42e815ffc4400b15b05096590 Mon Sep 17 00:00:00 2001 From: Marius Stanciu Date: Tue, 21 Sep 2021 20:16:44 +0300 Subject: [PATCH] - more Shapely deprecations fixes --- CHANGELOG.md | 1 + appParsers/ParseGerber.py | 6 ++++-- camlib.py | 5 +++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 87ccb2b5..81be307d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ CHANGELOG for FlatCAM beta - made sure that the Gerber Object geometry is always flattened - in Legacy2D graphic engine fixed setting the Opacity functionality - fixed a recent issue where Gerber files made out of single polygons were not processed +- more Shapely deprecations fixes 19.09.2021 diff --git a/appParsers/ParseGerber.py b/appParsers/ParseGerber.py index feb22853..c5190dd1 100644 --- a/appParsers/ParseGerber.py +++ b/appParsers/ParseGerber.py @@ -1641,9 +1641,11 @@ class Gerber(Geometry): except TypeError: buff_length = 1 - try: + if isinstance(self.solid_geometry, MultiPolygon): + sol_geo_length = len(self.solid_geometry.geoms) + elif isinstance(self.solid_geometry, list): sol_geo_length = len(self.solid_geometry) - except TypeError: + else: sol_geo_length = 1 try: diff --git a/camlib.py b/camlib.py index 1b1ed4be..20259054 100644 --- a/camlib.py +++ b/camlib.py @@ -8104,8 +8104,9 @@ def flatten_shapely_geometry(geometry): if isinstance(geometry, (MultiLineString, MultiPolygon, MultiPoint)): for geo in geometry.geoms: flat_list.append(geo) - for geo_el in geometry: - flat_list += flatten_shapely_geometry(geo_el) + else: + for geo_el in geometry: + flat_list += flatten_shapely_geometry(geo_el) except TypeError: flat_list.append(geometry)