From c76deaf144d4a4009be49cfd44fe8d3b3f3c0b40 Mon Sep 17 00:00:00 2001 From: Juan Pablo Caram Date: Sun, 6 Sep 2015 14:57:15 -0400 Subject: [PATCH] Fixed #147. Had a circular dependency import. --- FlatCAMDraw.py | 16 +++++++++++++--- FlatCAMTool.py | 3 +-- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/FlatCAMDraw.py b/FlatCAMDraw.py index 30d51069..d64d4b54 100644 --- a/FlatCAMDraw.py +++ b/FlatCAMDraw.py @@ -334,7 +334,7 @@ class FCArc(FCShapeTool): startangle = arctan2(p1[1] - center[1], p1[0] - center[0]) stopangle = arctan2(p2[1] - center[1], p2[0] - center[0]) self.geometry = DrawToolShape(LineString(arc(center, radius, startangle, stopangle, - self.direction, self.steps_per_circ))) + self.direction, self.steps_per_circ))) elif self.mode == '132': p1 = array(self.points[0]) @@ -348,7 +348,7 @@ class FCArc(FCShapeTool): stopangle = arctan2(p3[1] - center[1], p3[0] - center[0]) self.geometry = DrawToolShape(LineString(arc(center, radius, startangle, stopangle, - direction, self.steps_per_circ))) + direction, self.steps_per_circ))) else: # self.mode == '12c' p1 = array(self.points[0]) @@ -1322,7 +1322,17 @@ class FlatCAMDraw(QtCore.QObject): self.replot() def buffer(self, buf_distance): - pre_buffer = cascaded_union([t.geo for t in self.get_selected()]) + selected = self.get_selected() + + if len(selected) == 0: + self.app.inform.emit("[warning] Nothing selected for buffering.") + return + + if not isinstance(buf_distance, float): + self.app.inform.emit("[warning] Invalid distance for buffering.") + return + + pre_buffer = cascaded_union([t.geo for t in selected]) results = pre_buffer.buffer(buf_distance) self.add_shape(DrawToolShape(results)) diff --git a/FlatCAMTool.py b/FlatCAMTool.py index b880d918..b2d93c8a 100644 --- a/FlatCAMTool.py +++ b/FlatCAMTool.py @@ -3,9 +3,8 @@ from shapely.geometry import Point from shapely import affinity from math import sqrt -import FlatCAMApp from GUIElements import * -from FlatCAMObj import FlatCAMGerber, FlatCAMExcellon +from FlatCAMObj import * class FlatCAMTool(QtGui.QWidget):