- fixed issue in the isolation function, if the isolation can't be done there will be generated no Geometry object

This commit is contained in:
Marius Stanciu
2019-08-06 03:29:43 +03:00
parent 59b4defa0b
commit 5a141ad115
3 changed files with 22 additions and 10 deletions

View File

@@ -544,6 +544,7 @@ class Geometry(object):
# the previously commented block is replaced with this block - regression - to solve the bug with multiple
# isolation passes cutting from the copper features
geo_iso = []
if offset == 0:
if follow:
geo_iso = self.follow_geometry
@@ -557,14 +558,16 @@ class Geometry(object):
if type(self.solid_geometry) is list and len(self.solid_geometry) == 1:
geo_iso = self.solid_geometry[0].buffer(offset, int(int(self.geo_steps_per_circle) / 4))
else:
geo_iso = self.solid_geometry.buffer(offset, int(int(self.geo_steps_per_circle) / 4))
for el in self.solid_geometry:
geo_iso.append(el.buffer(offset, int(int(self.geo_steps_per_circle) / 4)))
else:
if type(self.solid_geometry) is list and len(self.solid_geometry) == 1:
geo_iso = self.solid_geometry.buffer[0](offset, int(int(self.geo_steps_per_circle) / 4),
join_style=corner)
else:
geo_iso = self.solid_geometry.buffer(offset, int(int(self.geo_steps_per_circle) / 4),
join_style=corner)
for el in self.solid_geometry:
geo_iso.append(el.buffer(offset, int(int(self.geo_steps_per_circle) / 4),
join_style=corner))
# end of replaced block
if follow: