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)