- the selection shapes are now moved from Move Plugin to AppMain

- Fiducials Plugin: fixed errors due of changes in the Shapely module
- Fiducials Plugin: fixed an error where in Basic mode the soldermask opening is added incorrectly
This commit is contained in:
Marius Stanciu
2023-05-19 13:09:08 +03:00
parent ba3152e5f9
commit a49f54d63f
10 changed files with 60 additions and 51 deletions

View File

@@ -23,6 +23,8 @@ import gettext
import appTranslation as fcTranslate
import builtins
from camlib import flatten_shapely_geometry
fcTranslate.apply_language('strings')
if '_' not in builtins.__dict__:
_ = gettext.gettext
@@ -84,7 +86,7 @@ class ToolFiducials(AppTool):
self.handlers_connected = False
# storage for temporary shapes when adding manual markers
self.temp_shapes = self.app.move_tool.sel_shapes
self.temp_shapes = self.app.sel_shapes
def run(self, toggle=True):
self.app.defaults.report_usage("ToolFiducials()")
@@ -402,6 +404,8 @@ class ToolFiducials(AppTool):
"""
fid_size = self.ui.fid_size_entry.get_value() if fid_size is None else fid_size
fid_type = 0 if fid_type is None else fid_type # default is 'circular' <=> 0
if fid_type == "circular":
fid_type = 0
line_thickness = self.ui.line_thickness_entry.get_value() if line_size is None else line_size
radius = fid_size / 2.0
@@ -439,12 +443,10 @@ class ToolFiducials(AppTool):
new_apertures[new_apid]['geometry'].append(deepcopy(dict_el))
s_list = []
if g_obj.solid_geometry:
try:
for poly in g_obj.solid_geometry:
s_list.append(poly)
except TypeError:
s_list.append(g_obj.solid_geometry)
flat_geo = flatten_shapely_geometry(g_obj.solid_geometry)
if flat_geo:
for poly in flat_geo:
s_list.append(poly)
s_list += geo_list
elif fid_type == 1: # 'cross'
@@ -504,15 +506,14 @@ class ToolFiducials(AppTool):
new_apertures[new_apid]['geometry'].append(deepcopy(dict_el))
s_list = []
if g_obj.solid_geometry:
try:
for poly in g_obj.solid_geometry:
s_list.append(poly)
except TypeError:
s_list.append(g_obj.solid_geometry)
flat_geo = flatten_shapely_geometry(g_obj.solid_geometry)
if flat_geo:
for poly in flat_geo:
s_list.append(poly)
geo_buff_list = MultiPolygon(geo_buff_list)
geo_buff_list = geo_buff_list.buffer(0)
geo_buff_list = flatten_shapely_geometry(geo_buff_list)
for poly in geo_buff_list:
s_list.append(poly)
else:
@@ -583,12 +584,10 @@ class ToolFiducials(AppTool):
new_apertures[new_apid]['geometry'].append(deepcopy(dict_el))
s_list = []
if g_obj.solid_geometry:
try:
for poly in g_obj.solid_geometry:
s_list.append(poly)
except TypeError:
s_list.append(g_obj.solid_geometry)
flat_geo = flatten_shapely_geometry(g_obj.solid_geometry)
if flat_geo:
for poly in flat_geo:
s_list.append(poly)
for poly in geo_buff_list:
s_list.append(poly)