فهرست منبع

Fixed #147. Had a circular dependency import.

Juan Pablo Caram 10 سال پیش
والد
کامیت
c76deaf144
2فایلهای تغییر یافته به همراه14 افزوده شده و 5 حذف شده
  1. 13 3
      FlatCAMDraw.py
  2. 1 2
      FlatCAMTool.py

+ 13 - 3
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))
 

+ 1 - 2
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):