- fixes in Panelize and Cutout Tool (Panelize has issues when exporting Gerber with aperture macros)
This commit is contained in:
@@ -10,6 +10,7 @@ CHANGELOG for FlatCAM beta
|
|||||||
17.01.2021
|
17.01.2021
|
||||||
|
|
||||||
- some changes in the GUI elements and some updates in the Cutout Tool
|
- some changes in the GUI elements and some updates in the Cutout Tool
|
||||||
|
- fixes in Panelize and Cutout Tool (Panelize has issues when exporting Gerber with aperture macros)
|
||||||
|
|
||||||
13.01.2021
|
13.01.2021
|
||||||
|
|
||||||
|
|||||||
@@ -719,6 +719,7 @@ class Gerber(Geometry):
|
|||||||
match = self.tool_re.search(gline)
|
match = self.tool_re.search(gline)
|
||||||
if match:
|
if match:
|
||||||
current_aperture = match.group(1)
|
current_aperture = match.group(1)
|
||||||
|
|
||||||
# self.app.log.debug("Line %d: Aperture change to (%s)" % (line_num, current_aperture))
|
# self.app.log.debug("Line %d: Aperture change to (%s)" % (line_num, current_aperture))
|
||||||
|
|
||||||
# If the aperture value is zero then make it something quite small but with a non-zero value
|
# If the aperture value is zero then make it something quite small but with a non-zero value
|
||||||
|
|||||||
@@ -1693,7 +1693,10 @@ class CutOut(AppTool):
|
|||||||
|
|
||||||
# first subtract geometry for the total solid_geometry
|
# first subtract geometry for the total solid_geometry
|
||||||
new_solid_geometry = CutOut.subtract_geo(self.man_cutout_obj.solid_geometry, cut_poly)
|
new_solid_geometry = CutOut.subtract_geo(self.man_cutout_obj.solid_geometry, cut_poly)
|
||||||
new_solid_geometry = linemerge(new_solid_geometry)
|
try:
|
||||||
|
new_solid_geometry = linemerge(new_solid_geometry)
|
||||||
|
except ValueError:
|
||||||
|
pass
|
||||||
self.man_cutout_obj.solid_geometry = new_solid_geometry
|
self.man_cutout_obj.solid_geometry = new_solid_geometry
|
||||||
|
|
||||||
# then do it on each tool in the manual cutout Geometry object
|
# then do it on each tool in the manual cutout Geometry object
|
||||||
|
|||||||
@@ -554,8 +554,21 @@ class Panelize(AppTool):
|
|||||||
|
|
||||||
# panelization
|
# panelization
|
||||||
pol_nr = 0
|
pol_nr = 0
|
||||||
for geo_el in panel_source_obj.tools[tool]['solid_geometry']:
|
|
||||||
trans_geo = translate_recursion(geo_el)
|
trans_geo = translate_recursion(panel_source_obj.tools[tool]['solid_geometry'])
|
||||||
|
try:
|
||||||
|
for trans_it in trans_geo:
|
||||||
|
if not trans_it.is_empty:
|
||||||
|
new_obj.tools[tool]['solid_geometry'].append(trans_it)
|
||||||
|
|
||||||
|
# update progress
|
||||||
|
pol_nr += 1
|
||||||
|
disp_number = int(np.interp(pol_nr, [0, geo_len], [0, 100]))
|
||||||
|
if old_disp_number < disp_number <= 100:
|
||||||
|
app_obj.proc_container.update_view_text(
|
||||||
|
' %s: %d %d%%' % (_("Copy"), int(element), disp_number))
|
||||||
|
old_disp_number = disp_number
|
||||||
|
except TypeError:
|
||||||
if not trans_geo.is_empty:
|
if not trans_geo.is_empty:
|
||||||
new_obj.tools[tool]['solid_geometry'].append(trans_geo)
|
new_obj.tools[tool]['solid_geometry'].append(trans_geo)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user