- starting to work on storing the solid_geometry for each tool in part in Excellon Object

This commit is contained in:
Marius Stanciu
2019-02-12 16:55:43 +02:00
committed by Marius
parent 9b61e4cc37
commit 02793f7ae2
4 changed files with 48 additions and 17 deletions

View File

@@ -1882,27 +1882,45 @@ class FlatCAMExcellon(FlatCAMObj, Excellon):
if not FlatCAMObj.plot(self):
return
try:
_ = iter(self.solid_geometry)
except TypeError:
self.solid_geometry = [self.solid_geometry]
try:
# Plot excellon (All polygons?)
if self.options["solid"]:
for geo in self.solid_geometry:
self.add_shape(shape=geo, color='#750000BF', face_color='#C40000BF', visible=self.options['plot'],
layer=2)
for tool in self.tools:
for geo in self.tools[tool]['solid_geometry']:
self.add_shape(shape=geo, color='#750000BF', face_color='#C40000BF', visible=self.options['plot'],
layer=2)
else:
for geo in self.solid_geometry:
self.add_shape(shape=geo.exterior, color='red', visible=self.options['plot'])
for ints in geo.interiors:
self.add_shape(shape=ints, color='green', visible=self.options['plot'])
for tool in self.tools:
for geo in self.tools[tool]['solid_geometry']:
self.add_shape(shape=geo.exterior, color='red', visible=self.options['plot'])
for ints in geo.interiors:
self.add_shape(shape=ints, color='green', visible=self.options['plot'])
self.shapes.redraw()
except (ObjectDeleted, AttributeError):
self.shapes.clear(update=True)
# try:
# _ = iter(self.solid_geometry)
# except TypeError:
# self.solid_geometry = [self.solid_geometry]
#
# try:
# # Plot excellon (All polygons?)
# if self.options["solid"]:
# for geo in self.solid_geometry:
# self.add_shape(shape=geo, color='#750000BF', face_color='#C40000BF', visible=self.options['plot'],
# layer=2)
# else:
# for geo in self.solid_geometry:
# self.add_shape(shape=geo.exterior, color='red', visible=self.options['plot'])
# for ints in geo.interiors:
# self.add_shape(shape=ints, color='green', visible=self.options['plot'])
#
# self.shapes.redraw()
# except (ObjectDeleted, AttributeError):
# self.shapes.clear(update=True)
# try:
# # Plot excellon (All polygons?)
# if self.options["solid"]:
@@ -4118,6 +4136,7 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
self.ui.plot_cb.setChecked(True)
self.ui_connect()
class FlatCAMCNCjob(FlatCAMObj, CNCjob):
"""
Represents G-Code.